java 16进制工具
package w;/*** 16进制工具类* 数据存储* 计算机中数据的存储都是用补码方式存储的。一个数的二进制序列它的最高位是符号位。0表示正数,1表示负数* 反码:* 一个数是正,则它的反码与原码相同;* 一个数是负,则符号位为1,其余各位是对原码取反* 补码:* 一个数为正,则它的原码、反码、补码相同* 一个数为负,则符号位为1,其余各位是对原码取反,然后整个数加1public static void main(String[] args) {System.out.println(Integer.MAX_VALUE);2147483647int i=Integer.MAX_VALUE+1;System.out.println(i);-2147483648说明溢出后会循环System.out.println(i-1);2147483647byte b=127;System.out.println(b<<3>>3);127说明byte转成int位移i=-1;System.out.println(i<<33);-2System.out.println(i>>10);-1说明位移会按位数循环}*/
public class Hex {/*** byte数组转字符* */public static String bytesToHexString(byte[] src) {StringBuilder stringBuilder = new StringBuilder("");if (src == null || src.length <= 0) {return null;}for (int i = 0; i < src.length; i++) {int v = src[i] & 0xFF;String hv = Integer.toHexString(v);if (hv.length() < 2) {stringBuilder.append(0);}stringBuilder.append(hv);}return stringBuilder.toString();}/*** string要是偶数*/public static byte[] hexStringToBytes(String hexString) {if (hexString == null || hexString.equals("")) {return null;}hexString = hexString.toUpperCase();int length = hexString.length() / 2;char[] hexChars = hexString.toCharArray();byte[] d = new byte[length];for (int i = 0; i < length; i++) {int pos = i * 2;d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));}return d;}/*** 16进制字符转byte*/private static byte charToByte(char c) {return (byte) "0123456789ABCDEF".indexOf(c);}/*** 将指定byte数组以16进制的形式打印到控制台*/public static void printHexString(byte[] b) {for (int i = 0; i < b.length; i++) {String hex = Integer.toHexString(b[i] & 0xFF);if (hex.length() == 1) {hex = '0' + hex;}System.out.print(hex.toUpperCase());}}public static void main(String[] args) {//根据指定进制转换成数字System.out.println(Integer.parseInt("32", 16));//根据指定进制转换成字符串System.out.println(Integer.toString(32, 16));}
}
java 16进制工具相关推荐
- java 16进制格式化_hutool系列教材 (三)- 编码工具 - Java 16进制工具
代码比较 复制代码 package cn.how2j.test; import static java.lang.annotation.ElementType.METHOD; import stati ...
- java int to hex_Java字符串转16 进制工具类Hex.java | 学步园
Java 字符串转 16 进制工具类 Hex.java 实现 16进制 0xfecd .. 和 java 字符串之间的互转换! 如果做开发,通常用户登陆密码都会 mad5(salt + pwd) 然后 ...
- java 16进制 累加,java 16进制求和示例
java 16进制求和,也就是16进制字节求二进制和,自己写的逻辑有点问题,不能满足需求,故从网上搜了下,满足了需求,代码如下public class Jinzhi16Util { public St ...
- java 16进制_JAVA十六进制数据接收与传输
由于项目中经常遇到与设备进行交互获取数据,不仅有Python版本.还有Java版本,还可能会有C#版本,在此做个记录. 一.十六进制转换工具类 主要包含十六进制字符串转ASCII,ASCII转十六进制 ...
- java 16进制与图片互转
十六进制转成图片 /*** 十六进制转成图片* @author Administrator**/public static void saveToImgFile(String src,String o ...
- java 16进制与汉字_java实现汉字转unicode与汉字转16进制实例
本文实例讲述了java实现汉字转unicode与汉字转16进制的实现方法.分享给大家供大家参考.具体实现方法如下: 一.汉字转unicode public static string tounicod ...
- java 16进制转int_java 16进制与int互转问题
因为自己在写16进制字符串解析方面的东西,为了验证正确性,就和java底层Integer执行结果对比遇到一个不解的问题,测试代码如下:publicstaticvoidmain(String[]args ...
- java 16进制转成字符串_java 16进制转成字符串
java 将十六进制转化成字符串方法: public static String toStringHex(String s) { byte[] baKeyword = new byte[s.lengt ...
- java 16进制转64进制_Java进制概述及进制间的相互转换
什么是进制? 进制也是进位制,是人们规定的一种进位方法.对于任何一种进制--X进制,就表示某一位置上的数运算时是逢X进一位.十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推. 十进 ...
最新文章
- Python的命名空间和作用域
- R语言使用yardstick包的lift_curve函数评估多分类(Multiclass)模型的性能、并使用autoplot函数可视化模型在每个交叉验证(或者重采样)的每一折fold在每个分类上的提升
- python输出一个月日历表_关于python一个月总结
- vmware workstation 8上面装vsphere5
- 完全自主可控的安全关键领域仿真测试软件SkyEye可替代SCADE
- 如何有效地遍历Java Map中的每个条目?
- spring Boot 2.1.5 (1)---安装环境
- 三阶汉诺塔java源代码_如何使用Java实现汉诺塔问题求解
- 《交互式程序设计 第2版》一3.11 小结
- verilog之按键消抖的理解
- 新手福音︱正则表达式小工具RegExr
- ctags 的最简单使用
- 开发人员测试,也必须有测试报告
- 各类邮箱POP3和SMTP服务器地址和端口
- 计算机硬盘发展现状,固态硬盘的发展现状
- Ubuntu12.04软件安装指南
- SQL right()函数
- 本科课程【虚拟现实引擎Unity3D】实验3 - 烘焙光影贴图与动画应用
- [附源码]Python计算机毕业设计SSM建筑工程管理系统(程序+LW)
- OSAL 之功耗管理