我居然发现突然让我写个八进制的数我不知道该如何表示。丢死人了。
public static void main(String[] args) {
/*在java(应该说基本所有编程语言)中都没有二进制的直接表示方法
* 因为二进制太长了,本来系统就是将一些非二进制转成二进制来方便
* 运算的。
*/
int i2 = (1<<4) + (1<<1) + 1;//烦不烦啊这样表示10011,要不就用0,1组成的byte数组来表示好了
int i8 = 023; //零二三,不是欧
int i10 = 19;
int i16 = 0x13; //零叉一三,也不是欧
System.out.println("i_2: "+ i2
+"\ni_8: "+ i8
+"\ni_10: "+ i10
+"\ni_16: "+ i16);
//也可以反过来获得
int i = 19;
System.out.println("\n\ni_2: "+Integer.toBinaryString(i)
+"\ni_8: "+Integer.toOctalString(i)
+"\ni_16: "+Integer.toHexString(i));
}