Stu*_*ook 66
在Java和其他几种语言中,以...开头的整数文字0被解释为八进制(基数为8)的数量.
对于单位数字(除了08和09,不允许),结果是相同的,因此您可能不会注意到它们被解释为八进制.但是,如果您编写的数字超过一个有效数字,您可能会对结果感到困惑.
例如:
010 == 8
024 == 20
Run Code Online (Sandbox Code Playgroud)
由于八进制文字通常不是你想要的,所以你应该始终注意永远不要开始使用整数文字0,除非你实际上是在尝试自己写零.
cwa*_*ole 14
任何前缀为0的数字都被视为八进制.八进制数字只能使用数字0-7,就像十进制可以使用0-9,二进制可以使用0-1.
// octal to decimal
01 // 1
02 // 2
07 // 7
010 // 8
020 // 16
// octal to binary (excluding most significant bit)
01 // 1
02 // 10
07 // 111
010 // 1000
020 // 10000
Run Code Online (Sandbox Code Playgroud)
有10种类型的人,那些了解三元的人,那些不了解的人,以及那些认为这是一个愚蠢的玩笑的人.