当我运行这个程序时,我在线程“main”中得到错误Exception java.lang.NumberFormatException:empty String。是否有可能通过抛出异常一些如何或必须使用try catch语句来完成这项工作?
private double[] scores3 = new double[5];
Scanner keyboard = new Scanner(System.in);
public void enterData()
{
double score;
double numberMin = 0;
double numberMax = 100;
do{
System.out.println("Enter the student's third test score");
while (!keyboard.hasNextDouble()) {
keyboard.next();
}
score3 = keyboard.nextDouble();
}
while (score3 <= numberMin || score3 >= numberMax);
double score3 = Double.parseDouble(keyboard.nextLine());
答案 0 :(得分:0)
关于你是否可以在其他地方抛出错误的问题,你可以通过声明
来做到这一点public void enterData() throws NumberFormatException
但是如果你想继续迭代你的while语句,我建议使用try catch块。
答案 1 :(得分:0)
在将字符串解析为数字之前..将字符串与“”进行比较或使用isEmpty()
函数检查它是否为空字符串!
示例:
if (myString.isEmpty()) {
//Do Nothing
} else {
//Code to perform calculations
}
或
if (!myString.isEmpty()) {
//Code to perform calculations
}