我试图做一个while循环来获取用户输入,并确保他们输入的只是一个字符,因此如果他们做ab,它将要求他们做另一个用户输入,而不是把他们输入的第一个字母作为答案。我能用下面这样的试一试吗?现在不行,我也不知道为什么。
谢谢你的帮助!
boolean single = true;
while(single) {
try {
if(letter.length()==1) {
break;
} else {
System.out.println("Please enter a single character only!");
}
} catch (Exception e) {
System.out.println("Please enter a single character only!");
}
}
1条答案
按热度按时间efzxgjgh1#
这不适合引发异常。首先,检查输入的长度,如果有效,检查
input.charAt(0)
是一封信。您可以使用布尔变量来跟踪输入是否无效,并在输入无效的情况下进行循环。有不同类型的循环。我更喜欢使用
do-while
在这种情况下循环。一do-while
循环保证其主体将至少执行一次。查看本教程了解更多信息。示例运行: