日期:2014-05-20  浏览次数:20668 次

java一个小问题,各位老鸟帮忙解决一哈
java语言;将08赋值给int类型变量出错;提示为过大的整数。int占四个字节表示范围-65536-+65535。08为什么过大?本质原因是什么?怎么存储的呢

------解决方案--------------------
探讨
java语言;将08赋值给int类型变量出错;提示为过大的整数。int占四个字节表示范围-65536-+65535。08为什么过大?本质原因是什么?怎么存储的呢

------解决方案--------------------
探讨
加0表示八进制……囧囧

------解决方案--------------------
int类型的数表示范围是:-2*10^31~2*10^31-1;如果int类型的数是楼主据说的范围的话,那神七火箭还不一头栽到太平洋里.呵呵^-^
以0开头的数表示为8进制
以0x开头的数表示为16进制


------解决方案--------------------
java中int 类型的范围是:-2147483648 到2147483648 ;再说08,数字前面加一个0,表示这个常量是一个8进制数,而8进制数是没有“8”这个数字的,只有0->7,所以会出现过大。比如010或07,06,05,等就没问题了,这个8进制数就是十进制中的“8”。所以就出现报错现象;