如何将字符串中的hex-int解析为Integer?

时间:2014-11-21 16:58:16

标签: java parsing integer

我写这篇文章没有问题:(它也没有任何错误)

int hex = 0xFFFFFFFF;

整数也必须有一个alpha值!

当我尝试这样做时:

Integer hex = Integer.parseInt("0xFFFFFFFF");
// Or I try this:
Integer hex = Integer.parseInt("FFFFFFFF");

我被java.lang.NumberFormatException: For input string: "0xFFFFFFFF"抛出了!

为什么这不起作用?

我猜测还有其他方法可以解析我刚才没有意识到的十六进制整数,而且我真的需要能够从字符串中解析十六进制为我正在制作的程序。

1 个答案:

答案 0 :(得分:1)

实际上有一个单独的函数可以定义基数:

https://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String,%20int)

Integer.parseInt(x)只需拨打Integer.parseInt(x, 10),因此您必须指定基数为10的数字。

为了解析十六进制字符串,您只需使用以下内容(请注意,不允许使用0x前缀):

Integer.parseInt("FFFFFFF", 16);