-1
我试图将“0x16”和“0b10”转换为十进制使用“Integer.parseInt(”0x16“,10)”,但我保持收到这个错误:如何将字符串转换为十进制使用Integer.parseInt(字符串,int)
Exception in thread "main" java.lang.NumberFormatException: For input string: "0x16"
我试图将“0x16”和“0b10”转换为十进制使用“Integer.parseInt(”0x16“,10)”,但我保持收到这个错误:如何将字符串转换为十进制使用Integer.parseInt(字符串,int)
Exception in thread "main" java.lang.NumberFormatException: For input string: "0x16"
的Integer.parseInt功能首先argumet是表达一个数字的字符串,和第二argumet是碱(或基数)。
“0x16”由两部分组成,“0x”表示基数为16,“16”表示十六进制数。
如果你想获得“0x16”的整数值,该代码将
int aValue;
aValue = Integer.parseint("16",16);
然后,您可以通过下面的代码
printf("%d" , aValue);
点是 显示十进制值1.二进制,十进制和十六进制是用字符串表示整数值的格式。 2.“0x16”和“0b10”是'base'和'value'的组合(以字符串形式)。 3.要将组合字符串转换为整数,请使用Inter.parseint,其中'string'作为第一个参数,'base'作为第二个参数。 (0x表示'base是16',0b表示'base是2'等) Ex: “0x16”:parseint(“16”,16); “0b10”:parseint(“10”,2);
[documentation](http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt%28java.lang.String,%20int%29)表示这是正确以显示该错误。 – usr2564301 2014-08-27 08:39:05
你不应该有十六进制/二进制指标,并且你的基础是错误的。参见:http://stackoverflow.com/questions/15735079/convert-from-one-base-to-another-in-java – 2014-08-27 08:39:22