在下面的代码中,提示用户输入数字等级或点击" s" || " S"跳过此要求。输入采用字符串的形式。如果输入不是"" ||" S",则输入被解析为double。代码完美无缺。现在,我想进行输入数据验证并将输入限制为" s"或" S"或0-100之间的任何数字。有没有办法在不创建字符串形式的每个术语的情况下执行此操作?例如(行==" 0" ||行==" 1"等等......直到100
// Prompting the user for Score (Numerical Grade)
System.out.println("Kindly input Numerical Score: (Enter s to Skip)");
// reading the input into the line variable of string datatype
String line = input.nextLine();
// checking if line =="s" or =="S" to skip, otherwise
// the value is parsed into a double
if("s".equals(line) || "S".equals(line))
{
}else try
{
score = Double.parseDouble(line);
System.out.println(score);
} catch( NumberFormatException nfe)
{
}
答案 0 :(得分:2)
您已经在解析该值以获得Double
。只需检查变量的值。
if (score >= 0 && score <= 100) {
doXYZ();
} else {
notProcessing();
}