Java-十六进制字符串表示为整数十六进制
我有一个字符串作为“5F2A”作为十六进制。我想将其转换为int 0x5F2AJava-十六进制字符串表示为整数十六进制,java,formatting,hex,Java,Formatting,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(2
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));
Map Map=newhashmap();
map.put(0x5F2A,“somevalue”);
System.out.println(map.get(24362));
System.out.println(map.get(0b0101111100101010));
将为两者都提供值
somevalue
无需转换:
System.out.println("0x" + str);
并将任意整数转换为十六进制表示:
Integer.toHexString(intNumber);
这应该是你要做的一切了 无需转换:
System.out.println("0x" + str);
并将任意整数转换为十六进制表示:
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
表示与int i=24362
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
相同的
16是十六进制的基数。请参见
16是十六进制的基数。不,这是不可能的<代码>系统输出打印项次(编号)代码>将始终以十进制而不是十六进制输出。您可以使用
System.out.format
。我不想打印它。我想把它用作整数。e、 ginti=0x5F2A代码>int number=Integer.parseInt(str,16)
正在将字符串
转换为带基数16(十六进制)的int
。@AshutoshVaidya然后你应该更新你的问题,因为现在它表明你发布的代码应该显示输出0x5F2A
。谢谢@ErwinBolwidt我不知道数字可以互换使用。不,这是不可能的<代码>系统输出打印项次(编号)代码>将始终以十进制而不是十六进制输出。您可以使用System.out.format
。我不想打印它。我想把它用作整数。e、 ginti=0x5F2A代码>int number=Integer.parseInt(str,16)
正在将字符串
转换为带基数16(十六进制)的int
。@AshutoshVaidya然后您应该更新您的问题,因为现在它声明您发布的代码应该显示输出0x5F2A
。谢谢@ErwinBolwidt我不知道数字可以互换使用。它仍然是字符串。我想要整数。@AshutoshVaidya您可以通过转换成整数。它会给我一个十进制数24362。我需要asintn=0x5F2A代码>@AshutoshVaidya您混淆了存储变量和打印变量variable@AshutoshVaidya0x5F2A
只是数字24362
的一种表示。这只是二进制101111100101010
的一个演示。它仍然是字符串。我想要整数。@AshutoshVaidya您可以通过转换成整数。它会给我一个十进制数24362。我需要asintn=0x5F2A代码>@AshutoshVaidya您混淆了存储变量和打印变量variable@AshutoshVaidya0x5F2A
只是数字24362
的一种表示。这只是二进制101111100101010
的演示。谢谢。我不知道数字可以互换使用。谢谢。我不知道数字可以互换使用。