文档章节

Java整数-字节,字节-字符,字节数组-十六进制字符串转换

DEC_LIU
 DEC_LIU
发布于 2010/09/29 11:45
字数 262
阅读 743
收藏 2

// 整数到字节数组转换
public static byte[] int2bytes(int n) {
byte[] ab = new byte[4];
ab[
0] = (byte) (0xff & n);
ab[
1] = (byte) ((0xff00 & n) >> 8);
ab[
2] = (byte) ((0xff0000 & n) >> 16);
ab[
3] = (byte) ((0xff000000 & n) >> 24);
return ab;
}


// 字节数组到整数的转换
public static int bytes2int(byte b[]) {
int s = 0;
s
= ((((b[0] & 0xff) << 8 | (b[1] & 0xff)) << 8) | (b[2] & 0xff)) << 8
| (b[3] & 0xff);
return s;
}


// 字节转换到字符
public static char byte2char(byte b) {
return (char) b;
}


private final static byte[] hex = "0123456789ABCDEF".getBytes();

private static int parse(char c) {
if (c >= 'a')
return (c - 'a' + 10) & 0x0f;
if (c >= 'A')
return (c - 'A' + 10) & 0x0f;
return (c - '0') & 0x0f;
}


// 从字节数组到十六进制字符串转换
public static String Bytes2HexString(byte[] b) {
byte[] buff = new byte[2 * b.length];
for (int i = 0; i < b.length; i++) {
buff[
2 * i] = hex[(b[i] >> 4) & 0x0f];
buff[
2 * i + 1] = hex[b[i] & 0x0f];
}

return new String(buff);
}


// 从十六进制字符串到字节数组转换
public static byte[] HexString2Bytes(String hexstr) {
byte[] b = new byte[hexstr.length() / 2];
int j = 0;
for (int i = 0; i < b.length; i++) {
char c0 = hexstr.charAt(j++);
char c1 = hexstr.charAt(j++);
b[i]
= (byte) ((parse(c0) << 4) | parse(c1));
}

return b;
}

© 著作权归作者所有

DEC_LIU
粉丝 27
博文 18
码字总数 9469
作品 0
浦东
架构师
私信 提问
Java HexString-字节数组与十六进制字符数组转换

Java HexString-字节数组与十六进制字符数组转换 Java中byte(字节)用二进制表示占用8 bit (位),而我们知道16进制的每个字符需要用4位二进制位来表示,所以我们就可以把每个byte转换成两...

秋风醉了
2015/04/07
6.2K
0
java的常量、变量及相关知识

今天付老师给我们说了java基础的第二课。主要说了很多常量、变量、进制转换和码表方面的内容。传智的老师果然还是很牛啊,一些以前看书不能看懂的问题一看就了解了。 常量(Constant),就是恒...

emiykurosite
2012/03/29
108
0
《俗人笔记》之《Java基础语法上》

基础前言: 二进制: 十进制转二进制:使用除以2获取余数来算 二进制转十进制:按8421编码 字节: 最小的存储单位是字节,最小的信息单位是位(bit) 1B=8bit 1KB=1024B 依次类推 DOS命令 盘符...

钱无极
2018/12/10
0
0
Java I/O : Java中的进制详解

作者:李强强 上一篇,泥瓦匠基础地讲了下Java I/O : Bit Operation 位运算。这一讲,泥瓦匠带你走进Java中的进制详解。 一、引子 在Java世界里,99%的工作都是处理这高层。那么二进制,字节...

泥沙砖瓦浆木匠
2015/06/14
449
0
web开发中的JAVA字符转码

二、基本概念 2.1 JAVA中字符的表达 JAVA中有char、byte、String这几个概念。 char 指的是一个UNICODE字符,为16位的整数。java抓取网页保存的乱码问题解决 byte 是字节,字符串在网络传输或...

墙头草
2011/06/28
453
0

没有更多内容

加载失败,请刷新页面

加载更多

为什么要在网站中应用CDN加速?

1. 网页加载速度更快 在网站中使用CDN技术最直接的一个好处就是它可以加快网页的加载速度。首先,CDN加速的内容分发是基于服务器缓存的,由于CDN中缓存了不少数据,它能够给用户提供更快的页...

云漫网络Ruan
29分钟前
4
0
亚玛芬体育(Amer Sports)和信必优正式启动合作开发Movesense创新

亚玛芬体育和信必优正式启动合作开发Movesense创新,作为亚玛芬体育的完美技术搭档,信必优利用Movesense传感器技术为第三方开发移动应用和服务。 Movesense基于传感器技术和开放的API,测量...

symbiochina88
40分钟前
3
0
创龙TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA核心板规格书

SOM-TL437xF是一款广州创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA芯片设计的核心板,采用沉金无铅工艺的10层板设计,适用于高速数据采集和处理系统、汽车导航、工业自动化等领...

Tronlong创龙
40分钟前
3
0
好程序员Java学习路线分享MyBatis之线程优化

  好程序员Java学习路线分享MyBatis之线程优化,我们的项目存在大量用户同时访问的情况,那么就会出现大量线程并发访问数据库,这样会带来线程同步问题,本章我们将讨论MyBatis的线程同步问...

好程序员官方
46分钟前
6
0
IDEA 自定义方法注解模板

IDEA 自定义方法注解模板 1、使用效果 /*** 计算交易费用* @Author wangjiafang* @Date 2019/9/11* @param feeComputeVo* @return*/@PostMapping("/v1/fee_compute")public ApiResp......

小白的成长
46分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部