Java 向我解释一下';x';十六进制';0xf0';来自
十六进制从Java 向我解释一下';x';十六进制';0xf0';来自,java,hex,Java,Hex,十六进制从0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F开始 我对'0x0f'中的'x'从何而来感到困惑 如果'0x0f'='0000 1111'或'15'为什么不直接写'0f' 很确定这在大多数语言中都是通用的,但如果不是,我使用的是Java 谢谢。请参阅: 在十六进制或二进制文字中,整数仅由 0x或0b字符之后和任何类型后缀之前的数字。 因此,下划线可能不会立即出现在0x或0b之后,或者 在数字的最后一位之后 它用于区分基。这是历史性的,Java从C继承了这种语法 x是区分0
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F开始
我对'0x0f'
中的'x'
从何而来感到困惑
如果'0x0f'='0000 1111'
或'15'
为什么不直接写'0f'
很确定这在大多数语言中都是通用的,但如果不是,我使用的是Java
谢谢。请参阅:
在十六进制或二进制文字中,整数仅由
0x或0b字符之后和任何类型后缀之前的数字。
因此,下划线可能不会立即出现在0x或0b之后,或者
在数字的最后一位之后
它用于区分基。这是历史性的,Java从C继承了这种语法
x
是区分0377(例如)和0x377所必需的,其中前者的前导零表示其为八进制(基数8):
它实际上并不普遍(尽管它很普遍)。例如,在某些汇编语言中,您将看到$1234
。这来自C
,后者也有同样的功能。这被称为“十六进制”,你可以使用h
,但它非常接近g
,e
不能使用,因为它已经在十六进制中使用了x
显然是不同的。十六进制实际上只有16位数字(0-9,A-F),不像你所列的17位G
不是十六进制数字。+1表示简单,下面是答案示例
377 - base 10
0377 - base 8
0x377 - base 16