【发布时间】:2012-05-16 10:46:02
【问题描述】:
我是 java 编程的初学者,遇到了一个奇怪的问题。下面是我的代码,它要求用户输入并打印出用户一次输入一个单词的内容。
问题是程序永远不会结束,而且根据我有限的理解,它似乎卡在了 while 循环中。谁能帮我一点忙?提前致谢。
import java.util.Scanner;
public class Test{
public static void main(String args[]){
System.out.print("Enter your sentence: ");
Scanner sc = new Scanner (System.in);
while (sc.hasNext() == true ) {
String s1 = sc.next();
System.out.println(s1);
}
System.out.println("The loop has been ended"); // This somehow never get printed.
}
}
【问题讨论】:
-
(offtopic) 通常只写
while (sc.hasNext())而不是while (sc.hasNext() == true)。hasNext()已经返回一个布尔值。
标签: java loops while-loop infinite-loop