关于byte的各种转换

本文详细介绍了Java中字节(byte)与整型(int)、十六进制(hex)、字符串(String)之间的转换方法,包括字节到整型、字节到字符串、十六进制到字节、字节数组到字符串、字符串到字节数组等常用转换操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文的代码是有关于:byte与int,hex,String;byte[]和HexString,String之间的转换的。各种类型之间的转换,看下面两张图


图1 与byte有关的转换


图2 与byte[]有关的转换


1、byte转int

	public static int unsignedByteToInt(byte b){
		return (int)b&0xFF;
	}
2、byte和String相互转换

2.1、byte转成String的三种方法

		//_01 byte转换为String   Byte.toString(byte b)
		byte bb = 65;
		System.out.println(Byte.toString(bb));

		//_02 byte转换为String	byte+""
		System.out.println(bb+"");
	 
		//_03 byte转换为String	new String(new byte[]{byte b}),这种可以将65转换成"A",而不是"65"
		System.out.println(new String(new byte[]{bb}));

2.2、String转换为byte

String s = "65";
byte b3 = Byte.valueOf(s);
2.3、byte转换为Hex
public static String byteToHex(byte b){
		int i = b&0xFF;
		return Integer.toHexString(i);
	}
3、byte[]和String与HexString之间的转换

3.1、byte[]转换为String

byte[] byteArray = new byte[] {87, 79, 87, 46, 46, 46};
        String value = new String(byteArray);
        System.out.println(value);
3.2、String转换为byte[]

就是用getBytes()函数

3.3、byte[]转换为HexString

	public static String byteArrayToHexString(byte[] b){
		StringBuilder sb = new StringBuilder(b.length*2);
		for(int i= 0;i<b.length;i++){
			int v = b[i]&0xff;
			if(v<16){
				sb.append('0');
			}
			sb.append(Integer.toHexString(v));
		}
		return sb.toString().toUpperCase();
	}
3.4、HexString转换为byte[]
	public static byte[] hexStringToByteArray(String s){
		byte[] b = new byte[s.length()/2];
		for(int i = 0 ;i<b.length;i++){
			int index = i*2;
			int v = Integer.parseInt(s.substring(index,index+2),16);
			b[i] = (byte)v;
		}
		return b;
	}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值