java作业 boolean b=true i=(int)b 或者 int i=1; boolean b=(boolean) i; 这两种写法对吗?

如题所述

都不对,java中这两种类型不兼容,也不能互相转换
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-07
前者对,后者错,java中boolean类型只能用true或false表示,不能用数字追问

boolean类型的就能转换成int 型的,等于0或1,对吗?

追答

强制转换和隐式转换都不能的,不过可以通过代码实现啊。
多几句而已,
if(boolean b==true)
{int i=1};
if(boolean b==false)
{int i=0};

不好意思,2个都错的。。。前面没看仔细。

追问

也就是说,他们不能互相转换,对吗?那为什么,int跟其他类型的,如double,能强制转换?
谢谢!

第2个回答  2011-04-07
boolean b=true
int i=(int)b 正确i的值为1
另外一个错误
详细请查看变量的转换顺序追问

为什么错了?变量的转换顺序又是什么?
我java刚入门啊

第3个回答  2011-04-07
都不对追问

为什么?

追答

类型转换的问题啊,基本类型转换sun公司给封装好的
int i = Integer.parseInt(String s);
boolean b = Boolean.parseBoolean(String s);
不能强制类型转换

相似回答