进制转换的几个方法java

十进制转N进制

第一种:使用封装在Integer对象中的方法

无论是常规的10转2,8,16,还是相对应的2,8,16进制转化为10进制的方法,当然也包括10->n进制,n进制转10进制的常规方法.都被封装在Integer对象中.

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));
	}
}

输出:

18的二进制是:10010
18的八进制是:22
18的十六进制是:12
18的三进制是:200

第二种:自己实现十进制转化为n进制(n最大是16)

public static String GetPowerFactor (int R, int N) {
        char[] table=new char[16];  //进制表
        for (int i = 0; i < 16; i++) {
            if(i<10){
                table[i]= (char) (i+'0');
            }else{
                table[i]= (char) (i-10+'A');
            }
        }
        StringBuilder res=new StringBuilder();
        while(R!=0){
            int temp=R%N;
            char t=table[temp];
            res.append(t);
            R=R/N;
        }
        return res.reverse().toString();
 }

N进制转十进制

radix进制的字符串s转10进制

Integer.parseInt((String) s,(int) radix);

参考链接:
https://blog.csdn.net/m0_37961948/article/details/80438113

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