Java中十六进制转换 Integer.toHexString()
来源:互联网 发布:网络销售公司管理制度 编辑:程序博客网 时间:2024/04/29 10:52
为了显示一个byte型的单字节十六进制(两位十六进制表示)的编码,请使用:
Integer.toHexString((byteVar & 0x000000FF) | 0xFFFFFF00).substring(6)
Java代码
- import
junit.framework.TestCase; - public
class Hex extendsTestCase { publicvoid testPositiveIntToHex() { //如果正数小于15时,只输入一位,而不是按我们想像的两位标准十六进制输出显示的,后面解决这个问题 2));//2System.out.println(Integer.toHexString( 15));//fSystem.out.println(Integer.toHexString( 16));//10System.out.println(Integer.toHexString( "F",System.out.println(Integer.valueOf( 16));//16 } publicvoid testNegativeIntToHex() { //负整数时,前面输入了多余的FF ,没有去掉前面多余的 FF,按并双字节形式输出 2).toUpperCase());//FFFFFFFESystem.out.println(Integer.toHexString(- //实质上0xFF会像转换成0x000000FF后再进行位运算 2System.out.println(Integer.toHexString(- & 0xFF).toUpperCase());//FE 2System.out.println(Integer.toHexString(- & 0x000000FF).toUpperCase());//FE //注,FE输出时不会为-2,因为此时不会把FE看成负数,valueOf会把所有数字串看成正的 "FE",System.out.println(Integer.valueOf( 16));//254 //如果要输出-2,只能按以下形式输出 "-2",System.out.println(Integer.valueOf( 16));//-2 //所以要把FE 看成负的话,只能在前面加上负号,但是这里输出还不是-2, //而是先计算Integer.valueOf("FE",16),再在结果前加上负 "-FE",System.out.println(Integer.valueOf( 16));//-254 "-80",System.out.println(Integer.valueOf( 16));//-128 "7fffffff",System.out.println(Integer.valueOf( 16));//2147483647 //此句运行时会报错,因为最大正数为7fffffff,但如-80000000 却又可以运行,因为没超出整数范围 //System.out.println(Integer.valueOf("80000000",16));//不能运行,已注掉 "-80000000",System.out.println(Integer.valueOf( 16));//-2147483648 0xFE);//254System.out.println( 0xFE);//-254System.out.println(- //但0x80000000已满,无需补,第一位为一,所以最后为负数 0x80000000);//-2147483648System.out.println( } publicvoid testNegativeIntToBin() { 2));//111111111111111111111111System.out.println(Integer.toBinaryString(- 11111110 //实质上0xFF会像转换成0x000000FF后再进行位运算 2System.out.println(Integer.toBinaryString(- & 0xFF));//11111110 2System.out.println(Integer.toBinaryString(- & 0x000000FF));//11111110 //与上面十六进制是一样的 "111111111111111111111111System.out.println(Integer.valueOf( 1111111" ,2));//2147483647 //下面语句运行会出错,已注掉 //System.out.println(Integer.valueOf("10000000000000000000000000000000", 2)); "-100000000000000000000000System.out.println(Integer.valueOf( 00000000" ,2));//-2147483648 "11111110",System.out.println(Integer.valueOf( 2));//254 "-11111110",System.out.println(Integer.valueOf( 2));//-254 010);//8System.out.println( 10);//10System.out.println( } publicvoid testByteToHex() { bytenegativeByte 2;= - bytepositiveByte 2;= //System.out.println(Integer.toHexString(negativeByte).toUpperCase()); FFFFFFFE 0xFF).toUpperCase());//System.out.println(Integer.toHexString(negativeByte & FE //另一种转换,可以针对负数与正数的byte都可以以完整的单字节输出 0x000000ff)System.out.println(Integer.toHexString((negativeByte & | 0xffffff00) 6).toUpperCase());//FE.substring( 0x000000ff)System.out.println(Integer.toHexString((positiveByte & | 0xffffff00) 6).toUpperCase());//02.substring( } publicvoid testBiteMathematical() { //-9223372036854775808System.out.println(0x8000000000000000L); int)System.out.println(( 0x8000000000000000L); //0 //-9223372036854775792System.out.println(0x8000000000000010L); 0x80000000);//-2147483648System.out.println( 0x80000010);//-2147483632System.out.println( //0x00000010提升成长整型,最后结果为长整型0x8000000000000010L 0x00000010System.out.println( | //-92233720368547757920x8000000000000000L); //0x0010提升成整形,最后结果为整型0x80000010 0x0010System.out.println( | 0x80000000);//-2147483632} - }
- 【转】Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- Java中十六进制转换 Integer.toHexString()
- java.lang.Integer.toHexString()方法
- byte类型变量使用Integer.toHexString()显示其十六进制编码
- Integer.toHexString(int)得到byte类型的十六进制字符串形式
- java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用的必要性
- 【转】java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用的必要性
- java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用
- java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用
- java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用的必要性
- java.lang.Integer.toHexString(b[n] & 0XFF)中0XFF使用的必要性
- 虚拟机ping通主机,主机ping不通虚拟机
- Hessian轻量级二进制远程调用框架
- 锌指核酸酶
- Hadoop的调度器
- 22、从头学Android之Android的数据存储--SQLite
- Java中十六进制转换 Integer.toHexString()
- 创新工场孵化项目拨号精灵用户数接近100万,做iPhone上最适合中国人的拨号工具
- Hessian远程调用及序列化协议
- ubuntu下eclipse打开java文件,注释内容为乱码,解决方法
- YII Framework学习教程-YII的Model-Action和Models-2011-11-23
- 消灭编译警告(Warning)
- VS2005和Matlab2010b的联合编程的配置。
- 生产者与消费者问题
- EquipmentTreeView--1123