以下程序应显示一个窗口,要求输入1到12之间的数字。 每个数字都设置为一个月的值(1 =一月等)。 然后,它应输出键入月份所在的一年的季度(1 =一月;一月=1。一年的季度)。 输入错误的数字将向用户输出错误消息。 使用Switch Case进行评估。
到目前为止,几乎所有功能都可以正常使用,但是我遇到的问题是,当我输入的数字超出范围(1到12)时,这意味着小于1或大于12,我首先会收到输出消息“输入错误!”然后还有消息“季度:”。
我已经检查了oracle网站是否存在此问题,但是我找不到有关此信息。 他们有类似的代码,但是它在命令行中输出,我想使用JOptionPane.showMessageDialog
import javax.swing.*;
public class WhichQuarterIsThis
{
public static void main(String[] args)
{
String input, output, quarter;
int inputNumber;
input = JOptionPane.showInputDialog(null, "put in a number (1-12).");
inputNumber = Integer.parseInt(input);
quarter = "";
switch(inputNumber)
{
case 1:
case 2:
case 3: quarter = "1";
break;
case 4:
case 5:
case 6: quarter = "2";
break;
case 7:
case 8:
case 9: quarter ="3";
break;
case 10:
case 11:
case 12: quarter = "4";
break;
default: JOptionPane.showMessageDialog(null,"wrong input!");
}
if(inputNumber >= 1 || inputNumber <= 12)
{
JOptionPane.showMessageDialog(null, "Quarter: " + quarter);
}
}
}
当输入值超出1到12的范围时,不应输出“ Quarter:”字段。
谢谢。
答案 0 :(得分:2)
按如下所示修改条件语句。
if(inputNumber >= 1 && inputNumber <= 12)
{
JOptionPane.showMessageDialog(null, "Quarter: " + quarter);
}