java - 这个异常是什么意思?

标签 java exception double simulated-annealing numberformatexception

我正在实现一个模拟退火程序,其中一部分涉及从我的 java 程序读取的 .txt 文件计算分数。

1) 从用户那里读取输入字符串。我输入的字符串越长,越有可能出现下面的异常

2) 计算出的分数本质上是将很多小数相加,我将其存储在“double”变量中。

有人可以告诉我为什么会发生这样的异常吗?

Score from Hill Swap: 0.24874990000000005 After swap... Exception in thread "main" java.lang.NumberFormatException: For input string: "7.92066E-" at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)

非常感谢!

最佳答案

这意味着您的程序正在尝试解析字符串“7.92066E-”,该字符串不可解析为 Double。

您应该检查此字符串的来源(堆栈跟踪的其余部分应该会告诉您)并确保您没有在沿线的某处获取无效数据。

关于java - 这个异常是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5812711/

相关文章:

java - 没有日志的 UnableToCompleteException

Java,返回int的格式化字符串

c++ - *什么时候* C++ 异常会破坏 C 代码

c++ - 调试器主循环

javascript - 为什么 {} == false 会抛出异常?

java - 用 HTML 元素替换字符串

java - 使用 Java/Liferay 读取 PDF 文件并将其再次保存为 PDF

java - Android应用程序一启动就崩溃

c - 打印 double ,最后不加零?

java - 使用Java Double的Mysql DOUBLE列数据被截断异常