gpt4 book ai didi

java - 输入字符串大于 9 时 Integer.parseint() 失败

转载 作者:行者123 更新时间:2023-12-01 13:09:07 26 4
gpt4 key购买 nike

我正在尝试使用 Integer.parseInt() 将字符串转换为 int - 这在输入字符串为“9”时工作正常,但在输入字符串达到 10 时失败:

System.out.println("PROBLEM INT Chars:" + bf2Tokens[0].trim());
System.out.println("PROBLEM INT Bytes:" + bf2Tokens[0].trim().getBytes());
int n = Integer.parseInt(bf2Tokens[0].trim());

输出:

PROBLEM INT Chars:10
PROBLEM INT Bytes:[B@4f57011e
Exception in thread "main" java.lang.NumberFormatException: For input string: "10"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at Index.main(Index.java:281)

我也尝试过 Integer.valueOf() 但没有成功。

有什么建议吗?

非常感谢。

最佳答案

问题出在特殊(不可打印)字符

这是您的问题本身的输出。请再次查看 bf2Tokens[0] 的值。

字符串中有一些特殊(不可打印)字符,如您发布的以下输出所示。

PROBLEM INT Chars:1�0
PROBLEM INT Bytes:[B@4f57011e
Exception in thread "main" java.lang.NumberFormatException: For input string: "1�0"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at Index.main(Index.java:281)

关于java - 输入字符串大于 9 时 Integer.parseint() 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23033329/

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