十六进制,必须是0x开头,这个x可以是大写,也可以是小写,如:0x123 等同于 0X123
在16进制中,除了0x之外,后面的表示:
1 | 0~9 表示本身数字 |
除去0x之后的数字,倒数第一位乘16的0次方,倒数第二位乘16的1次方,以此类推
举例:
0x123:316^0+216^1+1*16^2 = 3+32+256 = 291
0xabcd:1316^0+1216^1+1116^2+1016^3 = 13+192+2816+40960 = 43981
0xff:1516^0+1516^1 = 15+240 = 255
0x0ff:1516^0+1516^1+0*16^2 = 15+240+0 = 255
0xff0:016^0+1516^1+15*16^2 = 0+240+3840 = 4080
所有,0x0ff 等同于 0xff , 但不同于 0xff0
在Java类的Integer中,
public final class Integer extends Number implements Comparable
@Native public static final int MIN_VALUE = 0x80000000;
@Native public static final int MAX_VALUE = 0x7fffffff;
0x80000000:8*16^7 = 2^3 * 2^28 = 2^31 = 1<<31 = 1后面31个0
0x7fffffff:716^7+1516^6+1516^5+1516^4+1516^3+1516^2+1516^1+1516^0 = 31个1