java之二進制與數據類型(一)

一、java支持十進制、八進制和十六進制,但是不支持二進制

java支持十進制:

java表示十進制不需要對數字有任何處理

//java表示十進制
int a = 13;
System.out.println("java表示十進制:"+a);

運行結果:

image.png

java支持八進制:

java表示八進制時,以“0”打頭

//java表示八進制
int b = 013;
System.out.println("java表示八進制:"+b);

運行結果:

image.png

java支持十六進制

java表示十六進制時,以“0x”打頭

//java表示十六進制
int c = 0x13;
System.out.println("java表示十六進制:"+c);

運行結果:

image.png

java不顯式支持二進制

因爲二進制過長,java中只能使用字符串來表示二進制

二、java運算方式

上面介紹了,java支持十進制、八進制、十六進制,但是細心的小夥伴馬上就發現了,上面的運行結果並不是我們所要的指定進制的數字,而是統一以十進制的形式標表示,這就說明,java在運算時始終使用二進制作爲運算方法。

三、進制轉換

整型轉換爲字符串

首先聲明一個十進制的整型數字:

int result = 13;

十進制->八進制

//將result由十進制轉爲八進制
String octalStr = Integer.toOctalString(result);
System.out.println(octalStr);

運行結果:

image.png

十進制->十六進制

//將result由十進制轉爲十六進制
String hexStr = Integer.toHexString(result);
System.out.println(hexStr);

運行結果:

image.png

十進制->二進制

//將result由十進制轉爲二進制
String binaryStr = Integer.toBinaryString(result);
System.out.println(binaryStr);

運行結果:

image.png

字符串轉爲整型:

Interger.valueOf(字符串,進制)方法可以將十進制轉爲其他進制的整型表示

String resultStr = "13";
//轉爲八進制
result = Integer.valueOf(resultStr, 8);
System.out.println("轉爲八進制:"+result);
result = Integer.valueOf(resultStr,16);
System.out.println("轉爲十六進制:"+result);

運行結果:

image.png

那麼,現在我們將retultStr轉爲二進制會發生什麼呢?

result = Integer.valueOf(resultStr,2);
System.out.println("轉爲二進制:"+result);

運行結果:

image.png

事實證明,java真的不能以整數形式表示二進制

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章