java实现进制转换

计算机中采用的是二进制,一个数字可以用任意进制表示。

关键技术剖析:

Java中在声明数字时默认采用的是十进制,可以在数字前加上符号表示数字采用八进制【前面加0(零)】或者十六进制【前面加上0x(x)】。

Java的整型封装类IntegerLong提供toStringint i,int radix)静态方法,可以将一个任意进制的整数转换为其他进制的整数。

使用IntegerLongtoBinaryString方法将整数转换为二进制。

使用IntegerLongtoOctalString方法将整数转换为八进制。

使用IntegerLongtoHexString方法将整数转换为十六进制。

使用IntegerLongtoString(int i)方法可以将其他进制的整数转换为十进制的整数的字符串表示。

 

public class SystemConversion {

public static void main(String[] args) {

int iOct 0567;//八进制数字的声明,在前面加上0(零)

int iTen 1000;//十进制数字的声明

int iHex 0xAbcd;//十六进制数字的声明,在前面加上0x(零x),x和abcd不区分大小写

 

System.out.println("八进制0567装换成二进制:Integer.toString(iOct, 2)="+Integer.toString(iOct, 2));

System.out.println("八进制0567装换成二进制:Integer.toBinaryString(iOct)="+Integer.toBinaryString(iOct));

System.out.println("八进制0567装换成十进制:Integer.toString(iOct, 10)="+Integer.toString(iOct, 10));

System.out.println("八进制0567装换成十进制:Integer.toString(iOct)="+Integer.toString(iOct));

System.out.println("八进制0567装换成十六进制:Integer.toString(iOct, 2)="+Integer.toString(iOct, 16));

System.out.println("八进制0567装换成十六进制:Integer.toHexString(iOct)="+Integer.toHexString(iOct));

 

System.out.println();

 

System.out.println("十进制1000装换成十六进制:Integer.toString(iTen,16)="+Integer.toString(iTen,16));

System.out.println("十进制1000装换成十六进制:Integer.toHexString(iTen)="+Integer.toHexString(iTen));

System.out.println("十进制1000装换成八进制:Integer.toString(iTen,8)="+Integer.toString(iTen,8));

System.out.println("十进制1000装换成八进制:Integer.toOctalString(iTen)="+Integer.toOctalString(iTen));

System.out.println("十进制1000装换成二进制:Integer.toString(iTen,2)="+Integer.toString(iTen,2));

System.out.println("十进制1000装换成二进制:Integer.toBinaryString(iTen)="+Integer.toBinaryString(iTen));

 

System.out.println();

 

System.out.println("十六进制0xAbcd装换成十进制:Integer.toString(iHex,10)="+Integer.toString(iHex,10));

System.out.println("十六进制0xAbcd装换成十进制:Integer.toString(iHex)="+Integer.toString(iHex));

System.out.println("十六进制0xAbcd装换成八进制:Integer.toString(iHex,8)="+Integer.toString(iHex,8));

System.out.println("十六进制0xAbcd装换成八进制:Integer.toOctalString(iHex)="+Integer.toOctalString(iHex));

System.out.println("十六进制0xAbcd装换成二进制:Integer.toString(iHex,2)="+Integer.toString(iHex,2));

System.out.println("十六进制0xAbcd装换成二进制:Integer.toBinaryString(iHex)="+Integer.toBinaryString(iHex));

 

System.out.println();

//还可将任意进制的整数装换成其他任意进制的数字

System.out.println("十六进制0xAbcd装换成七进制:Integer.toString(iHex,7)="+Integer.toString(iHex,7));

 

}

}

 

程序输出:

八进制0567装换成二进制:Integer.toString(iOct, 2)=101110111
八进制0567装换成二进制:Integer.toBinaryString(iOct)=101110111
八进制0567装换成十进制:Integer.toString(iOct, 10)=375
八进制0567装换成十进制:Integer.toString(iOct)=375
八进制0567装换成十六进制:Integer.toString(iOct, 2)=177
八进制0567装换成十六进制:Integer.toHexString(iOct)=177

十进制1000装换成十六进制:Integer.toString(iTen,16)=3e8
十进制1000装换成十六进制:Integer.toHexString(iTen)=3e8
十进制1000装换成八进制:Integer.toString(iTen,8)=1750
十进制1000装换成八进制:Integer.toOctalString(iTen)=1750
十进制1000装换成二进制:Integer.toString(iTen,2)=1111101000
十进制1000装换成二进制:Integer.toBinaryString(iTen)=1111101000

十六进制0xAbcd装换成十进制:Integer.toString(iHex,10)=43981
十六进制0xAbcd装换成十进制:Integer.toString(iHex)=43981
十六进制0xAbcd装换成八进制:Integer.toString(iHex,8)=125715
十六进制0xAbcd装换成八进制:Integer.toOctalString(iHex)=125715
十六进制0xAbcd装换成二进制:Integer.toString(iHex,2)=1010101111001101
十六进制0xAbcd装换成二进制:Integer.toBinaryString(iHex)=1010101111001101

十六进制0xAbcd装换成七进制:Integer.toString(iHex,7)=242140
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值