我注意到Java不允许我将像2000000000这样的大数字存储为整数类型,但如果我存储相应的十六进制值,即
因此,我的程序需要增加到2 ^ 32,略高于42亿。我测试了十六进制键
我的问题是,我必须从程序中提取一个十六进制字符串。
例如:
int largeHex = 0x77359400
,那就没有问题了。因此,我的程序需要增加到2 ^ 32,略高于42亿。我测试了十六进制键
0xffffffff
,它允许我以这种形式存储为整数类型。我的问题是,我必须从程序中提取一个十六进制字符串。
例如:
sT = "ffffffff";
int hexSt = Integer.valueOf(sT, 16).intValue();
这仅适用于较小的整数值
我收到一个错误
Exception in thread "main" java.lang.NumberFormatException: For input string: "ffffffff"
我只需要将这个值存储在整型变量中,例如:
int largeHex = 0xffffffff
哪个可以正常工作?
我使用整数是因为我的程序需要生成许多值。
int j = 2000000000
无法工作?20亿在31位内是可以容纳的。 - David R Tribble