如何获取有效的整数输入,但允许用户输入空值?
问题描述:
我想反复要求用户输入一个整数,但也允许他们取消。我有这样的:如何获取有效的整数输入,但允许用户输入空值?
int numSelectedCols = 0;
boolean validInput = false;
while(!(numSelectedCols > 0) && !validInput) {
try {
numSelectedCols = Integer.parseInt(JOptionPane.showInputDialog("Enter number of columns to be selected: "));
validInput = true;
}
catch (NumberFormatException e) {
System.out.println("Please enter an integer value");
}
}
它多次要求一个有效的输入,但是当我按下“取消”按钮,它依然保持着问。我该如何解决?
谢谢。
答
我想这样的作品:
while(!validInput) {
input = JOptionPane.showInputDialog("Enter number of columns to be selected: ");
if(input != null) {
try {
numSelectedCols = Integer.parseInt(input);
if(numSelectedCols > 0) {
validInput = true;
}
}
catch (NumberFormatException e) {
System.out.println("Please enter an integer value");
}
}
else {
validInput = true;
}
}