1 package com.jdk7.chapter3; 2 3 public class ChangeNumber { 4 /** 5 * 转换数字的进制 6 * int MIN_RADIX = 2; 7 * int MAX_RADIX = 36; 8 * @param args 9 */ 10 11 public static void main(String[] args) { 12 int iOct = 0567; //八进制的数字的声明,在数字前面加0,八进制的数字转换为二进制时,八进制每位由3个二进制表示 13 int iTen = 1000; //十进制的数字声明 14 int iHex = 0xABCD; //十六进制的数字声明,在数字前面加0x,十六进制的数字转换为二进制时,十六进制每位由4个二进制表示 15 16 //Integer.toString(iOct, 2)中,第一个参数为封装类Integer对应的基本数据类型数值,第二个参数为需要转换的目标进制[2,36] 17 //Long封装类也提供该功能 18 System.out.println("八进制0567转换为二进制后为: "+Integer.toString(iOct, 2)); 19 System.out.println("八进制0567转换为十进制后为: "+Integer.toString(iOct, 10)); 20 System.out.println("八进制0567转换为十六进制后为: "+Integer.toString(iOct, 16)); 21 System.out.println("八进制0567转换为七进制后为: "+Integer.toString(iOct, 7)); 22 System.out.println("十进制1000转换为二进制后为: "+Integer.toString(iTen, 2)); 23 System.out.println("十进制1000转换为八进制后为: "+Integer.toString(iTen, 8)); 24 System.out.println("十进制1000转换为十六进制后为: "+Integer.toString(iTen, 16)); 25 System.out.println("十六进制1000转换为二进制后为: "+Integer.toString(iHex, 2)); 26 System.out.println("十六进制1000转换为八进制后为: "+Integer.toString(iHex, 8)); 27 System.out.println("十六进制1000转换为十进制后为: "+Integer.toString(iHex, 10)); 28 } 29 } 30 31 执行结果: 32 八进制0567转换为二进制后为: 101110111 33 八进制0567转换为十进制后为: 375 34 八进制0567转换为十六进制后为: 177 35 八进制0567转换为七进制后为: 1044 36 十进制1000转换为二进制后为: 1111101000 37 十进制1000转换为八进制后为: 1750 38 十进制1000转换为十六进制后为: 3e8 39 十六进制1000转换为二进制后为: 1010101111001101 40 十六进制1000转换为八进制后为: 125715 41 十六进制1000转换为十进制后为: 43981