Java - Hex字符串表示形式为整数Hex

时间:2017-07-19 08:30:05

标签: java formatting hex

我有一个字符串" 5F2A"作为Hex。我想将其转换为int 0x5F2A。

Map<Integer, String> map = new HashMap<>();
map.put(0x5F2A, "somevalue");

System.out.println(map.get(24362));
System.out.println(map.get(0b0101111100101010));

数字应该是(带有0x)

  

0x5F2A

有可能吗?

重新定义并分享我今天学到的知识

somevalue

为两者提供值 $shoppingCart = ShoppingCart::where('key' ,$key)->with('shoppingCartItems', 'shoppingCartItems.product', 'shoppingCartItems.product.images')->first();

3 个答案:

答案 0 :(得分:4)

不需要转换:

System.out.println("0x" + str);

并将任意int转换为HEX表示:

Integer.toHexString(intNumber);

这应该是你需要的全部!

答案 1 :(得分:1)

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 < / p>

答案 2 :(得分:0)

请参阅here

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

16是十六进制的基数。