[转载]晨风�0�5�0�2�0�1�6�6 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));
}

java之进制转换的更多相关文章

  1. Java基础-进制转换

    Java基础-进制转换 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Java 程序中常用的进制 1>.十进制,由“0123456789” 这10个数字组成,逢十进一: ...

  2. 《java版进制转换》

    import java.util.Scanner; class 十进制转成十六进制_2 { public static void main(String[] args) { int num = 0; ...

  3. Java:进制转换

    进制转换是常常需要的一种数据处理,在java中的一些类中封装了具有转换功能的方法,这个不做介绍.其实,进制之间的转化是通过先位异或&,再位移动>>>的方式实现的. 例如,对于 ...

  4. java高精度进制转换

    POJ1131   由于本题只有小数部分(整数部分均为0),故在进制转换的之后只能自己手写转换方法了.   8进制转换10进制的方法为,以0.75为例,应是7*8^-1 + 5*8^-2.所以呢,可以 ...

  5. Java的进制转换操作(十进制、十六进制、二进制)

    2014-05-06 17:34 吴文付 最近由于工作上的需要,遇到进制转换的问题.涉及到的进制主要是 十进制,十六进制,二进制中间的转换. 这里整理一下.具体的计划为:封装一个转换类,一个测试类. ...

  6. Java 之进制转换

    //十进制转十六进制 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scan ...

  7. java学习进制转换之查表法

    10进制转16进制,以及10进制转2进制,还有10进制转8进制,这些转换如果按照常规思路的话,会灰常的麻烦. 我们来看一下 10进制转16进制: 假如这里有一个十进制数字:35,我们的需求就是把这个3 ...

  8. 【java】进制转换

    进制的表现形式: 十进制:0-9 ,满10 进1 八进制:0-7,满8进1,用0开头表示 十六进制:0-9,A-F,满16进1,用0x开头表示 十进制转换二进制: 原理:对十进制数进行除2运算,如37 ...

  9. PAT(B) 1044 火星数字(Java)进制转换

    题目链接:1044 火星数字 (20 point(s)) 题目描述 火星人是以 13 进制计数的: 地球人的 0 被火星人称为 tret. 地球人数字 1 到 12 的火星文分别为:jan, feb, ...

随机推荐

  1. iOS - Swift NSFileManage 文件管理

    前言 public class NSFileManager : NSObject public class NSFileHandle : NSObject, NSSecureCoding NSFile ...

  2. mysql概要(十四)索引(补充:外键级联操作)

    [ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ][ ON UPDATE { NO ACTION | CASCADE | SE ...

  3. [转发] 老叶观点:MySQL开发规范之我见

    原文: http://imysql.com/2015/07/23/something-important-about-mysql-design-reference.shtml 老叶观点:MySQL开发 ...

  4. POJ2676,HDU4069解决数独的两种实现:DFS、DLX

    搜索实现:解决数独有两种思考策略,一种是枚举当前格能填的数字的种数,这里有一优化策略就是先搜索能填入种数小的格子:另一种是考虑处理某一行(列.宫)时,对于某一个没用过的数字,若该行(列.宫)只有一个可 ...

  5. (三)ubuntu学习前传—uboot常见环境变量

    1.环境变量如何参与程序运行(1)环境变量有2份,一份在Flash中,另一份在DDR中.uboot开机时一次性从Flash中读取全部环境变量到DDR中作为环境变量的初始化值,然后使用过程中都是用DDR ...

  6. C++—函数

    一.函数的基本知识 要使用C++函数,必须完成一下工作: (1)提供函数定义: (2)提供函数原型: (3)调用函数. 1.定义函数 可以将函数分为两类,有返回值的函数和没有返回值的函数.没有返回值的 ...

  7. JavaMail 发送邮件案例

    #----------------这两个是构建session必须的字段---------- #smtp服务器 mail.smtp.host=smtp.exmail.qq.com #身份验证 mail. ...

  8. D3.js 弦图的制作

    这是一种用于描述节点之间联系的图表. 1. 弦图是什么 弦图(Chord),主要用于表示两个节点之间的联系. 两点之间的连线,表示谁和谁具有联系: 线的粗细表示权重: 2. 数据 初始数据为: var ...

  9. 串行通讯之.NET SerialPort异步写数据

    目录 第1章说明    2 1 为什么需要异步写数据?    2 2 异步写数据的代码    2 3 源代码    4 第1章说明 1 为什么需要异步写数据? 如下图所示,以波特率300打开一个串口. ...

  10. 5.6 WebDriver API实例讲解(31-35)

    31.判断页面元素是否存在 public static void testElementExist(){ driver.get("http://www.sogou.com"); t ...