Java:只需将十进制字节转换为十六进制字节

Kek*_*mee 3 java hex byte decimal

我想得到这个:

byte dec = 10;
Run Code Online (Sandbox Code Playgroud)

对此:

byte hex = 0x0A;
Run Code Online (Sandbox Code Playgroud)

但我无法在任何地方找到解决方案.我总是看到String s = Integer.parseInt(... 但是我不希望得到String结果.我想要一个byte.

ars*_*jii 10

一个字节只是内存中的一系列位 - 它在视觉上如何表示并不重要,两个不同的表示可能意味着相同的事情.如果你想要的只是一个十六进制文字,你可以试试这个:

byte dec = 10;
byte hex = 0xA;  // hex literal

System.out.println(dec == hex);
Run Code Online (Sandbox Code Playgroud)
true

需要注意的是dechex完全相同时这里; 10并且0xA代表相同的数字,只是在不同的基础上.

如果要以十六进制显示字节,可以使用Integer.toHexString():

byte dec = 10;
System.out.println(Integer.toHexString(dec));
Run Code Online (Sandbox Code Playgroud)
a