为什么使用scanner要求用户输入的Java while循环跳过第一个输入

时间:2017-12-01 14:47:18

标签: java while-loop java.util.scanner

我正在尝试获取用户输入,直到输入空白字段并按下输入按钮。我的while循环跳过第一个输入,我试过环顾四周,但我不明白如何修复它或使用更好的方法。

public static void main(String[] args){

      Container x = new Container();
      Scanner scanner = new Scanner(System.in);
      String input = scanner.nextLine();

      while (!input.equals("")) {   
            input = scanner.nextLine();            
            x.addWord(input);         
            } 
      x.display();

    }

input and output

1 个答案:

答案 0 :(得分:0)

在进入循环之前读取一行,然后立即在循环的第一行读取另一行。您应该将读取移动到循环体的末尾:

String input = scanner.nextLine();
while (!input.equals("")) {   
    x.addWord(input);
    input = scanner.nextLine();            
}