当前位置:首页 » 编程语言 » byte转intjava

byte转intjava

发布时间: 2024-06-29 23:14:22

java 如何将byte[4]数组转换成一个int型数据

java中将4字节的byte数组转成一个int值的工具方法如下: x0dx0a/** x0dx0a* @param byte[]x0dx0a* @return intx0dx0a*/ x0dx0apublic static int byteArrayToInt(byte[] b){ x0dx0a byte[] a = new byte[4]; x0dx0a int i = a.length - 1,j = b.length - 1; x0dx0a for (; i >= 0 ; i--,j--) {//从b的尾部(即int值的低位)开始数据 x0dx0a if(j >= 0) x0dx0a a[i] = b[j]; x0dx0a else x0dx0a a[i] = 0;//如果b.length不足4,则将高位补0 x0dx0a } x0dx0a int v0 = (a[0] & 0xff) << 24;//&0xff将byte值无差异转成int,避免Java自动类型提升后,会保留高位的符号位 x0dx0a int v1 = (a[1] & 0xff) << 16; x0dx0a int v2 = (a[2] & 0xff) << 8; x0dx0a int v3 = (a[3] & 0xff) ; x0dx0a return v0 + v1 + v2 + v3; x0dx0a}

② 在Java中,byte类型数据在运算之前要转换成int类型数据。

64 + 1会直接编译为65 因为65<128 所以可以直接作为byte类型赋值

③ java中如何将byte[]里面的数据转换成十六进制

方法如下:

/* *

* Convert byte[] to hex string.这里我们可以将byte转冲脊换成int,然后利用Integer.toHexString(int)

*来转换成16进制字符散悔渗串。

* @param src byte[] data

* @return hex string

*/

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();

}

此方法能将byte[]转化成16进制字符串,

热点内容
java直播网站源码 发布:2025-07-04 14:46:35 浏览:169
安卓应用市场消费记录怎么删除 发布:2025-07-04 14:39:47 浏览:30
知道一个服务器的ip地址 发布:2025-07-04 14:20:33 浏览:597
苹果7锁屏密码怎么改 发布:2025-07-04 14:04:44 浏览:710
P三零是什么配置 发布:2025-07-04 13:58:41 浏览:361
哪个安卓机有长方形home键 发布:2025-07-04 13:43:58 浏览:861
android脚本录制 发布:2025-07-04 13:17:47 浏览:342
嵌入式和安卓哪个硬件成本高 发布:2025-07-04 13:05:56 浏览:229
360代理服务器怎么设置 发布:2025-07-04 12:49:49 浏览:515
iphone在哪清除缓存 发布:2025-07-04 12:49:38 浏览:340