为什么08认为int超出范围,07而低于int ?
08
int
07
在Java和其他几种语言中,以开头的整数文字0被解释为八进制(基数8)的数量。
对于单位数(比其他08和09,这是不允许的),结果是一样的,所以你可能没有意识到他们被解释为八进制。但是,如果你写的数字的有效位数不止一个,那么结果可能会让你感到困惑。
09
例如:
010 == 8 024 == 20
由于八进制文字通常不是你想要的,因此请务必小心,切勿以开头的整数文字0,除非你当然实际上是在尝试自己写零。