我有一个字符串作为"5F2A"作为十六进制。我想将其转换为 int 0x5F2A。
String str = "5F2A";
int number = someOperation(str);
数字应该是(带 0x(
0x5F2A
可能吗?
改写并分享我今天学到的东西
Map<Integer, String> map = new HashMap<>();
map.put(0x5F2A, "somevalue");
System.out.println(map.get(24362));
System.out.println(map.get(0b0101111100101010));
将为两者提供somevalue
值。
无需转换:
System.out.println("0x" + str);
并将任意 int 转换为十六进制表示:
Integer.toHexString(intNumber);
这应该是你开始所需要的一切!
int i = 0x5F2A
实际上并不意味着什么,因为在内存中,一切都是二进制的,只有当你打印时,它才重要
String str = "5F2A";
int number = Integer.parseInt(str, 16); //alows to store an int, binary 0101111100101010
System.out.println(number); //24362 (decimal by default)
System.out.println(Integer.toHexString(number)); //5f2a (hexa possible too)
默认情况下,它以(二进制到(十进制格式打印,但您可以以十六进制格式打印,但int i = 0x5F2A
表示100%与int i = 24362
看这里
Integer.parseInt(/*your String*/, 16);
16 是十六进制的基数。