【发布时间】:2015-03-26 12:26:50
【问题描述】:
我使用 Java 已经有好几年了,我不太确定验证命令行输入的最佳实践是什么。
我的代码目前的结构如下:
while (true) {
try { ... break; } catch(...) {...}
}
我觉得这是不好的做法,因为它在某种程度上类似于使用 goto 语句。
有没有更好的方法来验证用户输入?
简单地使用布尔值是首选方法吗?
编辑:
更具体地说,验证来自标准输入(扫描仪)的用户输入。
某种程度:
while(true){
try {
userInput = Integer.parseInt(stdin.next());
break;
} catch (InputMismatchException e) {
...
}
}
【问题讨论】:
-
你能说得更具体点吗?你在说什么样的验证?在while循环中?
-
这是一个奇怪的重复标记。如果有什么我会把它标记为stackoverflow.com/questions/6456219/… 的重复,但实际上它与这两个问题略有不同。
-
这不是重复的。
-
为了记录,我投票关闭主要是基于意见,而不是作为一个骗子。
标签: java validation input