【发布时间】:2014-03-03 23:17:12
【问题描述】:
任务:检查用户输入的字符串是否具有相同的第一个和最后一个字符。如果是或否,则输出到屏幕,如果用户输入“完成”,则退出循环。
问题:当条件为假时执行while循环
我尝试过:使用不同类型的循环,在循环中执行循环以重新验证代码,然后一起放弃!
import java.util.*;
public class lab_15 {
public static void main(String args[]) {
String userInput = "";
String done = "done";
while (!userInput.equalsIgnoreCase(done))
{
int length;
Scanner sc = new Scanner(System.in);
userInput = sc.next();
length = (int)userInput.length();
if (userInput.charAt(0) == userInput.charAt(userInput.length()-1)) {
System.out.println("The first character equals the second character.");
}
else {
System.out.println("The first and second characters are different.");
}
}
// EXIT LOOP
System.out.println("Thank you for using this software!");
}
}
输入 + 布拉德利 +汉娜 + 完成
我仍然是该网站的新手,并且已经提到了有关帖子的条款和条件。如果您发现这个问题没有挑战性,请不要否定。我是编程新手,希望有所进步。
谢谢!!!
【问题讨论】:
-
您能否将提供给程序的输入包括在内?
-
如果输入
done,它仍然会经过循环的if ... else ...部分,然后才退出。 -
尝试使用 bufferedReader 而不是 Scanner。希望能解决问题
-
在条件前添加
if(userInput.equalsIgnoreCase(done)) break;。 -
@Jimmy 谢谢!这非常有效!感谢您对此类愚蠢问题的坚持不懈
标签: java string while-loop