Java StringUtils.isNumeric块作业窗格取消选项
这是我用来处理整数输入的代码:Java StringUtils.isNumeric块作业窗格取消选项,java,joptionpane,Java,Joptionpane,这是我用来处理整数输入的代码: public static int getIntInput(String message) { String numberStr = JOptionPane.showInputDialog(message); while (!StringUtils.isNumeric(numberStr) || Integer.parseInt(numberStr) == 0) { numberStr = JOptionPane.showInput
public static int getIntInput(String message) {
String numberStr = JOptionPane.showInputDialog(message);
while (!StringUtils.isNumeric(numberStr) || Integer.parseInt(numberStr) == 0) {
numberStr = JOptionPane.showInputDialog(message);
}
return Integer.parseInt(numberStr);
}
它可以正常工作,除非我想按JOption窗口上的“取消”或“关闭”按钮。当我这样做时,JOptionPane窗口再次显示
按下“取消”或“关闭”按钮时,如何正确关闭JOptionPane窗口
while (!StringUtils.isNumeric(numberStr) || Integer.parseInt(numberStr) == 0) {
if (numberStr == null) {
return 0;
}
else {
numberStr = JOptionPane.showInputDialog(message);
}
}
这就成功了。用
替换,而替换为如果@Sasha Salauyou不是一个非常聪明的解决方案,因为我真的希望窗口显示,直到用户输入一个有效的整数。我只想选择关闭窗口>终止程序。那么问题出在哪里showInputDialog()
当用户提交某些输入时返回,然后验证它。如果无效,则返回输入值以外的内容--null或指示错误输入的值,例如。g-1.