在JAVA中二進位,八進位,十六進位,十進位間進行相互轉換
來源:互聯網
上載者:User
十進制轉成十六進制:
Integer.toHexString(int i)
十進制轉成八進制
Integer.toOctalString(int i)
十進制轉成二進制
Integer.toBinaryString(int i)
十六進制轉成十進制
Integer.valueOf("FFFF",16).toString()
八十進制轉成十進制
Integer.valueOf("876",8).toString()
二轉十進制
Integer.valueOf("0101",2).toString()
有什麼方法可以直接將2、8、16代直接轉換為10種的嗎?
java.lang.Integer 類
parseInt(String s, int radix)
使用第二個參數指定的基數,將參數解析為有符號的能量。
jdk的例子:
parseInt("0", 10) 返回 0
parseInt("473", 10) 返回 473
parseInt("-0", 10) 返回 0
parseInt("-FF", 16) 返回 -255
parseInt("1100110", 2) 返回 102
parseInt("2147483647", 10) 返回 2147483647
parseInt("-2147483648", 10) 返回 -2147483648
parseInt("2147483648", 10) 拋出 NumberFormatException
parseInt("99", 拋出一個 NumberFormatException
parseInt("Kona", 10) 拋出 NumberFormatException
parseInt("Kona", 27) 返回 411787
十進制轉換如何寫(二,八,十六)不用算法
Integer.toBinaryString
Integer.toOctalString
Integer.toHexString
例二
公共課測試{
公共靜態無效主(字符串參數[]){
國際我= 100;
String binStr=Integer.toBinaryString(i);
String otcStr=Integer.toOctalString(i);
String hexStr=Integer.toHexString(i);
System.out.println(binStr);
}
例二
公共類 TestStringFormat {
公共靜態無效主(字符串 [] args){
如果(args.length == 0){
System.out.println("用法:java TestStringFormat <a number>");
System.exit(0);
}
整數因子 = Integer.valueOf(args[0]);
字符串;
s = String.format("%d", factor);
System.out.println(s);
s = String.format("%x", factor);
System.out.println(s);
s = String.format("%o", factor);
System.out.println(s);
}
}
其他方法:
Integer.toHexString(你的十進制數);
例如
String temp = Integer.toHexString(75);
輸出溫度就為4b
//輸入一個10位數字並把它轉換成16位數字
導入 java.io.*;
公共類 toHex{
public static void main(String[]args){
int input;//執行輸入數據
//創建輸入字符串的實例
BufferedReader strin=new BufferedReader(new InputStreamReader(System.in));
System.out.println("請輸入一個的時間:");
字符串 x=null;
嘗試{
x=strin.readLine();
}catch(IOException ex){
ex.printStackTrace();
}
輸入=Integer.parseInt(x);
System.out.println("你輸入的數字是:"+input);//輸出從輸入接收到的數字
System.out.println("它的16進制是:"+Integer.toHexString(input));//用toHexString把10進制轉換成16進制
}
}