黑马程序员技术交流社区

标题: 这题选什么 [打印本页]

作者: 刘永贵    时间: 2014-3-4 19:34
标题: 这题选什么
这题选什么

作者: 欢欢    时间: 2014-3-4 20:16
这套题我前段时间也做了,这道题我认为选D
其它的要么越界,要么语法错误、类型转换错误。
作者: twtzhongxin    时间: 2014-3-4 20:59
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double
自动类型转换:从低级别到高级别,系统自动转的;
选A.B.D
C:boolean不能强制转换成其他类型,反之也一样。
E:byte的范围为-128—127
作者: 山治0712    时间: 2014-3-4 21:08
ABD                  
作者: osully    时间: 2014-3-4 21:25
ABD

第一次赋值时 内部会自动强转
级别从低到高为:byte,char,short(这三个平级)-->int-->float-->long-->double
作者: 方青木    时间: 2014-3-4 23:30
我好像记得在float类型赋值的时候,数据后面必须加上f。所以我感觉B不对哦。
作者: Dora    时间: 2014-3-4 23:47
ABD正确

第一个是long类型的赋了一个八进制的数字。正确
第二个是float类型的赋了一个-412没有超出范围也正确,虽然412是整数类型,但是向上转型的时候是自动转型的。
第三个是布尔类型的和long,float等等数值类型不可以转换。
第四个是一个十六进制的数字,没有越界,所以也正确
第五个,越界了,byte类型是从-128~127,所以128越界了,错误。
作者: mohuancaizi    时间: 2014-3-5 00:45
选择abd  具体的范围参照如下
类型名称     关键字 占用空间(字节)    取值范围             默认值
字节型       byte       1                     -27—27-1            0
短整型       short     2              -215—215-1          0
整型         int           4              -231—231-1           0
长整型       long       8              -263—263-1          0
单精度浮点型 float  4              -3.4E+38—3.4E+38    0.0f
双精度浮点型 double 8              -1.7E+308—1.7E+308  0.0
作者: 云行水边    时间: 2014-3-5 10:05
ABD这道题我以前做过,C布尔类型数据和int数值类型不可以转换,E中byte的范围是-128-127,越界啦!
作者: 学习代码    时间: 2014-3-5 17:11
A D float后面没有加f




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