我需要验证用户输入字符串以确保它包含逗号。如果它不包含逗号,则必须打印"错误"并允许用户重新输入输入。我只是不确定要使用哪个循环。如果其他可能有效,但我需要它循环回扫描仪以进行用户输入。或者使用.contains的while循环?感谢。
答案 0 :(得分:1)
如果你想使用一个循环,我推荐for-each循环:
boolean found = false;
while (found == false) {
String input = "this is a sentence, with a comma"; // read input here
for (char ch: input.toCharArray()) {
if (ch == ',') {
found = true;
}
}
if (found == false) {
System.out.println("Error");
}
}
可能会有Java中内置的函数,例如" string.contains(character)"返回一个布尔值
input.contains(",")
答案 1 :(得分:-1)
for循环最适合这种情况。但您可以使用任何首选循环解决此问题。
使用for循环的解决方案
假设你得到的字符串是变量string1
enterdata: //ask for user to enter the string here
for(int i=0;i<string1.length();i++){
char c = string1.charAt(i);
if(",".equals(c))
continue correct;
}
if(true) continue enterdata; //this is just like goto statement
correct:
//write your code here