1 回答
TA贡献1864条经验 获得超2个赞
您没有告诉用户对阳光问题输入“是”或“否”,并且您没有检查以确保用户输入了任一值。如果我没有输入“yes”或“no”,那么在为其分配任何值之前正在使用阳光变量。
你可以消除症状
int sunshine = 0;
但这并不能解决问题。
你应该:
1) 指示用户输入“是”或“否”。
2) 检查用户是否输入了“是”或“否”并提出问题,直到输入正确的值
3) 为了更好的形式,使用 if/else 语句。
这是一个新的代码片段:
temp = JOptionPane.showInputDialog(null, "What temperature is it outside?");
temperature = Integer.parseInt(temp);
temp = JOptionPane.showInputDialog(null, "What percentage of humidity is there?");
humidity = Double.parseDouble(temp);
temp = "";
while (!temp.equals("yes") && !temp.equals("no")) {
temp = JOptionPane.showInputDialog(null, "Is it cloudy out? Type 'yes' or 'no' ");
}
if (temp.equals("yes"))
sunshine = 25;
else
sunshine = -25;
rating = temperature + humidity + sunshine;
添加回答
举报