java中各个进制转换

转自:http://aijava.cn/2359.html

众所周知、程序世界计算机中采用的是二进制,一个数字可以用任意进制表示。所以看一个数据值的同时。还要观察它的进制、以免造成笑话。

此时。进制之间的转换我也必然需要熟知、做到心中有数。下面爱Java就进制转换为大家提供几点参考.

分析:
Java中在声明数字时默认采用的是十进制,可以在数字前加上符号表示数字采用八进制【前面加0(零)】或者十六进制【前面加上0x(零x)】。
Java的整型封装类Integer和Long提供toString(int i,int radix)静态方法,可以将一个任意进制的整数转换为其他进制的整数。
使用Integer或Long的toBinaryString方法将整数转换为二进制。
使用Integer或Long的toOctalString方法将整数转换为八进制。
使用Integer或Long的toHexString方法将整数转换为十六进制。

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

1、Java 关键代码举例

int n1 = 14;
//十进制转成十六进制:
Integer.toHexString(n1);
//十进制转成八进制
Integer.toOctalString(n1);
//十进制转成二进制
Integer.toBinaryString(12);
 
//十六进制转成十进制
Integer.valueOf("FFFF",16).toString();
//十六进制转成二进制
Integer.toBinaryString(Integer.valueOf("FFFF",16));
//十六进制转成八进制
Integer.toOctalString(Integer.valueOf("FFFF",16));
 
//八进制转成十进制
Integer.valueOf("576",8).toString();
//八进制转成二进制
Integer.toBinaryString(Integer.valueOf("23",8));
//八进制转成十六进制
Integer.toHexString(Integer.valueOf("23",8));
 
//二进制转十进制
Integer.valueOf("0101",2).toString();
//二进制转八进制
Integer.toOctalString(Integer.parseInt("0101", 2));
//二进制转十六进制
Integer.toHexString(Integer.parseInt("0101", 2));


2、Java中二、八、十、十六进制之间的转换测试 
private int i = 2010;
 @Test
 public void testInteger() {
 System.err.println();
 System.err.println("原始数据:" + i);
 // 二进制转换
 System.err.println("==========整型——二进制转换==========");
 System.err.println("二进制:" + Integer.toBinaryString(i));
 System.err.println("十进制:"
 + Integer.parseInt(Integer.toBinaryString(i), 2));
 // 八进制转换
 System.err.println("==========整型——八进制转换==========");
 System.err.println("八进制:" + Integer.toOctalString(i));
 System.err.println("十进制:"
 + Integer.parseInt(Integer.toOctalString(i), 8));
 // 十六进制转换
 System.err.println("==========整型——十六进进制转换==========");
 System.err.println("十六进制:" + Integer.toHexString(i));
 System.err.println("十进制:"
 + Integer.parseInt(Integer.toHexString(i), 16));
 }
 @Test
 public void testLong() {
 System.err.println();
 System.err.println("原始数据:" + i);
 // 二进制转换
 System.err.println("==========长整型——二进制转换==========");
 System.err.println("二进制:" + Long.toBinaryString(i));
 System.err.println("十进制:" + Long.parseLong(Long.toBinaryString(i), 2));
 // 八进制转换
 System.err.println("==========长整型——八进制转换==========");
 System.err.println("八进制:" + Long.toOctalString(i));
 System.err.println("十进制:" + Long.parseLong(Long.toOctalString(i), 8));
 // 十六进制转换
 System.err.println("==========长整型——十六进进制转换==========");
 System.err.println("十六进制:" + Long.toHexString(i));
 System.err.println("十进制:" + Long.parseLong(Long.toHexString(i), 16));
 }



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值