gpt4 book ai didi

java - 将 String 转换为 Double 并将其放入堆栈中

转载 作者:行者123 更新时间:2023-12-02 07:10:43 26 4
gpt4 key购买 nike

我有这样的表达,例如:400 2.11 +我尝试将实数插入堆栈,当我这样做时,它会显示这部分代码中的错误

ch = input.charAt(j);
if (ch >= '0' && ch <= '9' || ch == '.')
temp = temp + ch;

else if (ch == ' ') {
x = Double.parseDouble(temp);
theStack.push(x);
temp = "";
}
else {

...

public void push(double j) {
stackArray[++top] = j;
}

这是消息

Exception in thread "main" java.lang.NumberFormatException: empty String
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1011)
at java.lang.Double.parseDouble(Double.java:540)
at ParsePost.doParse(ParsePost.java:26)
at InfixApp.main(InfixApp.java:21)

最佳答案

这是一个关于空字符串的错误,错误中明确提到了这一点。这里“temp”变量的值为空。并且 Double.parseDouble(temp) 无法解析空字符串。所以它会抛出异常。要使其工作,您必须提供一个字符串形式的 float ,该 float 可以为此函数解析。

关于java - 将 String 转换为 Double 并将其放入堆栈中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15562570/

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