黑马程序员技术交流社区
标题:
关于int类型的数据首位是0的问题,如:int i = 010;
[打印本页]
作者:
刘军亭
时间:
2013-2-15 17:52
标题:
关于int类型的数据首位是0的问题,如:int i = 010;
本帖最后由 刘军亭 于 2013-2-15 18:43 编辑
i 的值打印出来为什么会是8,发现只要数据前边有零,打印的值就会出错。
//int i=01032;为什么打印出来却是i=538
public class Test {
public static void main(String[] args){
int i = 010;
System.out.println("i="+i);
//为什么打印出来却是i=8
}
}
作者:
jonn
时间:
2013-2-15 17:59
前面有0,进行运算我看 是八进制转换成十进制的吧。。。
作者:
jonn
时间:
2013-2-15 18:00
8*1+0=8 打印结果是 8
作者:
刘军亭
时间:
2013-2-15 18:43
明白了,谢谢了
作者:
罗海云
时间:
2013-2-15 20:47
前面加0就是八进制. 所以会是8;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2