gpt4 book ai didi

java - 如何检查字符串是否为数字

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

这里没有太多解释,我需要检查一个字符串是否是数字,我尝试了这个推荐的方法,但有时会失败:

try {

Double.parseDouble((String) myString);
// CODE IF IT IS A NUMBER HERE

} catch (NumberFormatException e) {
// CODE IF IT IS NOT A NUMBER HERE
e.printStackTrace();
}

导致失败的字符串是C:\Users\xx11\Desktop\Example\Example.doc

我认为这与 11\D 部分有关,但我不确定,也无法证明这一点。

有更多经验的人是否知道为什么会发生这种情况以及如何解决它?

谢谢。

最佳答案

Double.parseDouble() 不是推荐的方法。由谁推荐以及为何推荐?它使用 double 文字 in Java source code 的规则,其中 99% 不是您希望程序的输入方式(它允许输入指数、十六进制等)。哦,它不区分区域设置。

如果输入来自人类,你最好使用DecimalFormat它是区域设置感知的并且可以轻松定制(它甚至提供对舍入模式的控制):

DecimalFormat fmt = new DecimalFormat();
Number number = fmt.parse(input);

从 DecimalFormat 中,您可以获得整数、数字或 BigDecimal,具体取决于该数量描述的内容以及您计划如何使用它。

关于java - 如何检查字符串是否为数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35621084/

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