java之進制轉換


[轉載]晨風�0�5�0�2�0�1�6�6 2014年03月08日  Java 發表

眾所周知、程序世界計算機中采用的是二進制,一個數字可以用任意進制表示。所以看一個數據值的同時。還要觀察它的進制、以免造成笑話。

此時。進制之間的轉換我也必然需要熟知、做到心中有數。下面就進制轉換為大家提供幾點參考.

分析:
  1. Java中在聲明數字時默認采用的是十進制,可以在數字前加上符號表示數字采用八進制【前面加0(零)】或者十六進制【前面加上0x(零x)】。
  2. Java的整型封裝類Integer和Long提供toString(int i,int radix)靜態方法,可以將一個任意進制的整數轉換為其他進制的整數。
  3. 使用Integer或Long的toBinaryString方法將整數轉換為二進制
  4. 使用Integer或Long的toOctalString方法將整數轉換為八進制。
  5. 使用Integer或Long的toHexString方法將整數轉換為十六進制。
  6. 使用Integer或Long的toString(int i)方法可以將其他進制的整數轉換為十進制的整數的字符串表示。

 

1、Java 關鍵代碼舉例

 

int n1 = 14;
//十進制轉成十六進制:
Integer.toHexString(n1);
//十進制轉成八進制
Integer.toOctalString(n1);
//十進制轉成二進制
Integer.toBinaryString(12);
 
//十六進制轉成十進制
Integer.valueOf("FFFF",16).toString();
//十六進制轉成二進制
Integer.toBinaryString(Integer.valueOf("FFFF",16));
//十六進制轉成八進制
Integer.toOctalString(Integer.valueOf("FFFF",16));
 
//八進制轉成十進制
Integer.valueOf("576",8).toString();
//八進制轉成二進制
Integer.toBinaryString(Integer.valueOf("23",8));
//八進制轉成十六進制
Integer.toHexString(Integer.valueOf("23",8));
 
//二進制轉十進制
Integer.valueOf("0101",2).toString();
//二進制轉八進制
Integer.toOctalString(Integer.parseInt("0101", 2));
//二進制轉十六進制
Integer.toHexString(Integer.parseInt("0101", 2));


 

2、Java中二、八、十、十六進制之間的轉換測試

 

 private int i = 2010;
 @Test
 public void testInteger() {
 System.err.println();
 System.err.println("原始數據:" + i);
 // 二進制轉換
 System.err.println("==========整型——二進制轉換==========");
 System.err.println("二進制:" + Integer.toBinaryString(i));
 System.err.println("十進制:"
 + Integer.parseInt(Integer.toBinaryString(i), 2));
 // 八進制轉換
 System.err.println("==========整型——八進制轉換==========");
 System.err.println("八進制:" + Integer.toOctalString(i));
 System.err.println("十進制:"
 + Integer.parseInt(Integer.toOctalString(i), 8));
 // 十六進制轉換
 System.err.println("==========整型——十六進進制轉換==========");
 System.err.println("十六進制:" + Integer.toHexString(i));
 System.err.println("十進制:"
 + Integer.parseInt(Integer.toHexString(i), 16));
 }
 @Test
 public void testLong() {
 System.err.println();
 System.err.println("原始數據:" + i);
 // 二進制轉換
 System.err.println("==========長整型——二進制轉換==========");
 System.err.println("二進制:" + Long.toBinaryString(i));
 System.err.println("十進制:" + Long.parseLong(Long.toBinaryString(i), 2));
 // 八進制轉換
 System.err.println("==========長整型——八進制轉換==========");
 System.err.println("八進制:" + Long.toOctalString(i));
 System.err.println("十進制:" + Long.parseLong(Long.toOctalString(i), 8));
 // 十六進制轉換
 System.err.println("==========長整型——十六進進制轉換==========");
 System.err.println("十六進制:" + Long.toHexString(i));
 System.err.println("十進制:" + Long.parseLong(Long.toHexString(i), 16));
 }

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM