繁体   English   中英

Java-十六进制字符串表示形式为整数十六进制

[英]Java - Hex String representation to integer Hex

我有一个字符串,如“ 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转换为HEX表示形式:

Integer.toHexString(intNumber);

那应该是您开始所需要的!

int i = 0x5F2A并不是什么意思,因为在内存中,所有内容都是二进制的,只有在打印时才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表示 int i = 24362 相同,100%

这里

Integer.parseInt(/*your String*/, 16);

16是十六进制的基数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM