-1

例如,我正在编写一个接受 textinput 并将其转换为 int 的程序。我希望数字的输入小于或等于5,但大于或等于0(0<=number<=5),我该怎么写?

   int number;
   textinput = JOptionPane.showInputDialog("give me a number");
   number = Integer.parseInt(textinput);

我希望用户输入一个介于 0 和 5 之间的数字,如果他们输入任何其他数字,则会有一条消息说该数字无效,然后他们再次输入

编辑:感谢您的回答,我使用了 do while 循环并且它有效,我现在只想问,我将如何制作一个弹出框说:“错误:请输入 0 到 5 之间的数字”,然后显示输入再一盒。

谢谢

4

3 回答 3

6

使用do-while循环:

int number;
do {
    String textinput = JOptionPane.showInputDialog("give me a number between 0 and 5");
    number = Integer.parseInt(textinput);
} while (!(number >= 0 && number <= 5));

编辑:如果您想显示错误消息,请尝试:

String textinput = JOptionPane.showInputDialog("give me a number between 0 and 5");
int number = Integer.parseInt(textinput);
while (!(number >= 0 && number <= 5)) {
    textinput = JOptionPane.showInputDialog("error: please a number between 0 and 5");
    number = Integer.parseInt(textinput);
}
于 2013-10-28T12:37:34.367 回答
0

编辑:

import javax.swing.*;
public class Untitled{
    public static void main(String[] args){
        int in = -1;
        while( in < 0 || in > 5){
            String m = JOptionPane.showInputDialog("enter number");
            in = Integer.parseInt(m);
            if(in < 0 || in > 5){
                JOptionPane.showMessageDialog(null,"enter again");
            }   
        }
    }
}
于 2013-10-28T12:39:17.157 回答
0

如果您的目标是阻止用户提供错误输入,这可以通过一行代码轻松完成。

使用下面的格式

JOptionPane.showInputDialog(parentComponent, message, title, messageType, icon, selectionValues, initialSelectionValue)

这将给出一组预定义的要选择的值。例如。

JOptionPane.showInputDialog(null, "test", "test", JOptionPane.INFORMATION_MESSAGE, null, new Integer[]{0,1,2,3,4,5}, 0);

会产生一些这样的输出

在此处输入图像描述

但是,如果您需要进行验证并抛出一些错误,您可以按照上面的方法进行操作。

于 2013-10-28T12:48:39.707 回答