Java 如何将2位小数转换为具有相同数字的字节?
我正在使用十六进制数和字节数,现在在转换以下内容时遇到了一个问题:Java 如何将2位小数转换为具有相同数字的字节?,java,android,hex,byte,Java,Android,Hex,Byte,我正在使用十六进制数和字节数,现在在转换以下内容时遇到了一个问题: int i= 26; byte b = 0x00; 我想要: b=0x26(0x26的格式必须为“字节”) 或者比如 i= 90; 我一定有 Byte b = 0x90; 你能给我一个做我工作的方法吗? 谢谢您。您可以使用该方法简单地将“26”解析为十六进制值,用于创建字节原语: int number = 26; String intString = Integer.toString(number); byte b = B
int i= 26;
byte b = 0x00;
我想要:
b=0x26代码>(0x26的格式必须为“字节”)
或者比如
i= 90;
我一定有
Byte b = 0x90;
你能给我一个做我工作的方法吗?
谢谢您。您可以使用该方法简单地将“26”解析为十六进制值,用于创建字节
原语:
int number = 26;
String intString = Integer.toString(number);
byte b = Byte.parseByte(intString, 16);
之所以使用16
的基值,是因为您希望字节的值等于0x26
,而0x
前缀表示以16为基数的十六进制
如果您想要字节
对象,可以改用:
将4字节数据转换为1字节数据?否!正如我在问题中所说的…输入是一个带2位的十进制数(或整数),输出是一个带相同数字的字节…为什么要在字节中附加相同的数字,然后再加上我们用于十六进制数的0x?你的意思是不需要将0x放在26位中的第一位吗?可以“0x”吗通过此方法添加到26的第一个?您不能调用parseByte(“0x26”,16)
,因为字符串只能包含给定基数的数字。对于基数16,这意味着0-9和A-F。表示十六进制的“0x”是不必要的,因为基数16指定了这一点。我不希望以int格式将数字保存到字节b,例如26,以1A值保存,而是希望以0x26值保存……您的代码是否可能?不清楚您在问什么。上述代码将获取一个值为26的int
,并生成一个字节
,该字节的值与调用字节b=0x26
得到的值相同。
Byte b = Byte.valueOf(intString, 16);