zoukankan      html  css  js  c++  java
  • java之进制转换

    [转载] 2014年03月08日  Java 发表

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

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

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

     

  • 相关阅读:
    WPF窗口和用户控件事件相互触发
    C#排序算法总结
    C#.NET操作数据库通用类
    在C#的WPF程序使用XAML实现画线
    centos7 用户介绍
    Linux系列2
    nginx的使用
    TCP协议、三次握手以及滑动窗口等的介绍(计算机网络基础知识)
    mysql的
    jQuery的东西
  • 原文地址:https://www.cnblogs.com/westward/p/5537974.html
Copyright © 2011-2022 走看看