Java中数字前零的含义

时间:2016-02-06 12:34:15

标签: java

我有这样的代码,但我不知道为什么结果变量在执行代码后有错误值

int x = 234;
boolean result = (x<0250);

以及为什么以下代码无法正常运行?

System.out.println(0250);
它打印168 !!为什么?!

2 个答案:

答案 0 :(得分:0)

0开头的整数文字是八进制(基数8)而不是十进制(基数为10)。

您的选择

hexadecimal = 0x0C;
decimal = 12; 
octal = 014;
binary = 0b1100;

答案 1 :(得分:0)

看起来像0x后跟一个整数(使用数字0-9和A-F)的数字是十六进制(基数为16)。

看起来像0后跟一个整数(使用数字0-7)的数字是八进制(基数为8)。