黑马程序员技术交流社区

标题: 我又纠结了 [打印本页]

作者: Jordon    时间: 2012-10-9 16:29
标题: 我又纠结了
既然boolean型数据内存中1表示true,0表示false。这者问什么不能运算操作,c语言就可以。这是什么情况?
作者: 柏占肖    时间: 2012-10-9 17:01
JAVA中boolean类型所占存储空间的大小没有明确指定,仅定义为能够取字面值true或false,在C++中bool类型所占存储空间就是1位,true和false其实就是常量,truer的值为1,false的值为0,但是在JAVA中就不同了,我个人觉得可能JAVA是为了更好的体现面向对象的设计思想才这样设计的吧,C++是既面向过程又面向对象,它针对bool类型的这种设计我想主要是考虑到要面向过程,个人观点,纯属交流
作者: 焦志鹏    时间: 2012-10-9 17:08
每个语言都有自己特殊的一点东西,非要用的话,做个类型转换应该也可以吧;

我是菜鸟,说错了还请大牛们指正;
作者: 葬天    时间: 2012-10-9 17:11
本帖最后由 葬天 于 2012-10-9 17:12 编辑

This data type represents one bit of information,
but its "size" isn't something that's precisely defined.
官方原话:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

注意:but是重点
作者: 尤圣回    时间: 2012-10-9 17:37
c语言没boolean 当时c语言用0和1代表




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2