java中“0x”表示的含义
参考:https://blog.csdn.net/wanghao109/article/details/12980737
=======================================================================
public static void main(String[] args) { int a = 0xff;//16进制默认是int int b = 0x000000ff; System.out.println(a);//255 System.out.println(b);//255 //结论16进制默认是int类型,前面的的0可以省略 //byte c = 0xff;//报错,需要强制把int转成byte byte d = 0b01;//0b默认是byte类型,前面的0可以省略 byte e = 0b000000001; System.out.println(d);//1 System.out.println(e);//1 }
public class Test { public static void main(String[] args) { int a = 0x2f;//小写十六进制(等价于0x002f) System.out.println(Integer.toBinaryString(a)); int b = 0x2F;//大写十六进制 System.out.println(Integer.toBinaryString(b)); int c = 10;//标准十进制 System.out.println(Integer.toBinaryString(c)); int d = 010;//以零开头,表示八进制 System.out.println(Integer.toBinaryString(d)); char e = 0xff;//char为2个字节,16位 byte f = 0xf;//byte为8位 short g = 0xff;//short为2个字节,16位 System.out.println(Integer.toBinaryString(e)); System.out.println(Integer.toBinaryString(f)); System.out.println(Integer.toBinaryString(g)); } } /* 结果如下:(都是按照int型处理) 101111 101111 1010 1000 11111111 1111 11111111