gpt4 book ai didi

java - 将字符串转换为数字,Java

转载 作者:搜寻专家 更新时间:2023-10-31 19:33:18 24 4
gpt4 key购买 nike

编辑:澄清将任何有效的数字编码从字符串转换为数字

对于所有接受的整数格式,尤其是那些在 Integer.parseInt 下抛出 NumberFormatException 的格式,如何将字符串转换为数字,比如仅针对整数。例如代码

...
int i = 0xff;
System.out.println(i);
String s = "0xff";
System.out.println( Integer.parseInt(s) );
....

将在第四行抛出 NumberFormatException,即使该字符串显然是十六进制整数的有效编码。我们可以假设我们已经知道编码是一个有效的数字,比如通过对照正则表达式检查它。最好也检查溢出(就像 Integer.parseInt 那样),但如果必须作为一个单独的步骤来完成也没关系。

我可以遍历每个数字并手动计算合成值,但这相当困难。有没有更好的办法?

编辑: 很多人针对十六进制回答这个问题,这很好,但不完全是我要问的(这是我的错,我以十六进制为例)。我想知道是否有办法解码所有有效的 java 数字。 Long.decode 非常适合捕捉十六进制,但它在

上失败了
222222L

这是一个完全有效的 long。我是否必须分别捕获每种不同的数字格式?我假设您已经使用正则表达式来判断它是什么类别的数字,即区分 float 、整数等。

最佳答案

你可以做

System.out.println(Integer.decode(s));

关于java - 将字符串转换为数字,Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23397449/

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