因此,我尝试创建仅在包含字母的情况下检查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()用于比较字符串的相等性。

07-25 21:33