前言:
以前寫c++的時候,進制轉換的時候基本就是對進制求餘,然後把餘數倒着輸出就OK了,但是到了java之後,一切都省去了,直接調函數,不僅方便,而且效率不低。
話不多說,上代碼:
public class 進制轉換 {
public static void main(String[] args) {
int a=11;
String s="11";
//當然不僅僅是Integer Long也可以
//多進制轉化爲10進制
for(int i=2;i<20;i++)
System.out.println(Integer.valueOf(s, i)+" "+Integer.parseInt(s, i));
//兩種方式都可以
System.out.println();
//10進制轉化爲多進制
for(int i=2;i<20;i++)
{
System.out.println(Integer.toString(a, i));
}
//比較特殊的2 8 16進制有特別的函數
System.out.println(Integer.toHexString(a));//將10轉換爲十六進制,返回字符串類型
System.out.println(Integer.toOctalString(a));//將10轉爲八進制,返回字符串類類型
System.out.println(Integer.toBinaryString(a));//將10轉爲二進制,返回字符串類型
}
}
輸出結果:
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19
20 20
1011
102
23
21
15
14
13
12
11
10
b
b
b
b
b
b
b
b
b
13
1011