Java进制转换(x->y) ,话不多说,直接上代码

   //进制转换
    public static void main(String[] args){
        System.out.println(xToYScale("12", 10, 2));
        System.out.println(xToYScale("12", 16, 2));
        System.out.println(xToYScale("1010", 2, 10));
        System.out.println(xToYScale("144", 8, 16));
    }

    private static String xToYScale(String str, int oldScale, int toScale) {
        StringBuilder result = new StringBuilder();
        if (toScale == 10) {
            int num = 0;
            for (int i = 0; i < str.length(); i++) {
                num = num + Integer.parseInt(String.valueOf(str.charAt(i))) * (int) Math.pow(oldScale, str.length() - 1 - i);
            }
            result.append(num);
        } else if (oldScale == 10) {
            int num = Integer.parseInt(str);
            while (num != 0) {
                result.insert(0, num % toScale);
                num = num / toScale;
            }
        } else {
            int num = 0;
            for (int i = 0; i < str.length(); i++) {
                num = num + Integer.parseInt(String.valueOf(str.charAt(i))) * (int) Math.pow(oldScale, str.length() - 1 - i);
            }
            while (num != 0) {
                result.insert(0, num % toScale);
                num = num / toScale;
            }
        }
        return result.toString();
    }

转载:Java进制转换