gpt4 book ai didi

java - 整数到十六进制字符串 NumberformatException

转载 作者:行者123 更新时间:2023-12-01 17:20:07 24 4
gpt4 key购买 nike

我想将整数值转换为十六进制字符串。我很快搜索了 stackoverflow 并做了 following way (正如已接受的解决方案所示 - 但看起来不够仔细):

Integer.valueOf(String.valueOf(n), 16);

但是在尝试转换时

 Integer.valueOf(String.valueOf(-2115381772), 16)

它抛出一个NumberFormatException出于好奇 - 为什么会抛出 NumberFormatException?

(后来我将代码更改为Integer.toHexString(-2115381772),一切都按预期工作。)

最佳答案

因为,

Integer.valueOf(String.valueOf(-2115381772), 16)考虑-2115381772以十六进制 (16) 为基数的值,超出 int 的范围值(value)。所以你会得到这个异常。

Integer.toHexString(-2115381772)考虑-2115381772十进制值,范围为 int值。

关于java - 整数到十六进制字符串 NumberformatException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19375431/

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