因此,我尝试创建仅在包含字母的情况下检查kinderCode(String)的内容。如果确实包含不是字母的字符,则需要要求用户为kinderCode提供一个新值,然后再次对其进行检查。这里的问题是while循环永远不会离开。条件始终返回false。
kinderCode = input.next();
while (!(kinderCode.equals("[a-zA-Z]+"))) {
System.out.println("Foute ingave! Kindercode?");
kinderCode = input.next();
}
最佳答案
您需要使用.matches()
while (!(kinderCode.matches("[a-zA-Z]+"))) {
// rest of the code
}
matches(String regex)
告诉此字符串是否与给定的正则表达式匹配
.equals()
用于比较字符串的相等性。