進制轉化在JAVA中已經封裝好了.java
不管是常規的10轉2,8,16,仍是相對應的2,8,16進制轉化爲10進制的方法,固然也包括10->n進制,n進制轉10進制的常規方法.spa
都被封裝在Integer對象中..net
10進制轉化其餘進制 | 對應的方法,參數:n(原10進制數據),r(進制), | 返回值 |
10進制轉2進制 | Integer.toBinaryString(n); | 一個二進制字符串. |
10進制轉8進制 | Integer.toOctalString(n); | 一個八進制字符串 |
10進制轉16進制 | Integer.toHexString(n); | 一個16進制字符串 |
10進制轉 r 進制 | Integer.toString(100, 16); | 一個r進制字符串 |
public class Main { public static void main(String[] args) { int n = 18; Integer.toHexString(n); System.out.println(n + "的二進制是:" + Integer.toBinaryString(n)); System.out.println(n + "的八進制是:" + Integer.toOctalString(n)); System.out.println(n + "的十六進制是:" + Integer.toHexString(n)); System.out.println(n + "的三進制是:" + Integer.toString(n, 3)); } }
結果是:code
18的二進制是:10010對象
18的八進制是:22
18的十六進制是:12blog
18的三進制是:200ci
能夠經過這個水題去練習一下10進制轉2進制哦.字符串
下面是r進制轉10進制table
r進制轉10進制 | 方法 |
radix進制的字符串s轉10進制 | Integer.parseInt((String) s,(int) radix); |
public class Main { public static void main(String[] args) { String s = "10101";//1+4+16==21 System.out.println(Integer.parseInt(s,2));//結果是21 } }
真的不考慮看一下水題嗎??
水題:進制轉化