gpt4 book ai didi

java - 将字符串转换为整数十六进制值 "Strange"行为

转载 作者:搜寻专家 更新时间:2023-11-01 01:14:45 26 4
gpt4 key购买 nike

我注意到 java 不允许我存储大量数字,例如2000000000,即 20 亿显然是一个整数类型,但如果我存储相应的十六进制值即 int largeHex = 0x77359400;这很好,

所以我的程序将需要递增到 2^32,刚好超过 42 亿,我测试了十六进制 key 0xffffffff 它允许我以这种形式存储为 int 类型,

我的问题是我必须从程序中提取一个 HEX 字符串。

例子

sT = "ffffffff";

int hexSt = Integer.valueOf(sT, 16).intValue();

这只适用于较小的整数值

我得到一个错误

Exception in thread "main" java.lang.NumberFormatException: For input string: "ffffffff"

我需要做的就是将这个值放在一个整数变量中,例如

int largeHex = 0xffffffff

哪个工作正常?

我使用整数是因为我的程序需要生成很多值。

最佳答案

String hex = "FFFFFFFF"; // or whatever... maximum 8 hex-digits
int i = (int) Long.parseLong(hex, 16);

以带符号的整数形式为您提供结果 ...

关于java - 将字符串转换为整数十六进制值 "Strange"行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4355619/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com