Java 为什么扫描仪跳过最后一行?

Java 为什么扫描仪跳过最后一行?,java,java.util.scanner,Java,Java.util.scanner,我正在编写一个Java程序,其中包括使用scanner,但它似乎跳过了最后一行输入 我已经看过类似的帖子,但仍然没有找到合适的解决方案 Scanner scanner = new Scanner( System.in ); v1 = scanner.nextInt(); scanner.nextLine(); String v2 = scanner.nextLine(); v3 = scanner.nextInt(); String v4="";

我正在编写一个Java程序,其中包括使用scanner,但它似乎跳过了最后一行输入

我已经看过类似的帖子,但仍然没有找到合适的解决方案

    Scanner scanner = new Scanner( System.in );
    v1 = scanner.nextInt();
    scanner.nextLine();
    String v2 = scanner.nextLine();
    v3 = scanner.nextInt();
    String v4="";
    scanner.nextLine();
    while(scanner.hasNextLine()){

         v4 = v4 + " " +scanner.nextLine();

    }
    scanner.close();
因此,在我的v4输入值中:

1 2  
3 4  
11 12 

但是它只保存到v4的是v4=“1 2 3 4”

,因为您可以看到最后一个条目没有指向任何属性。所以,即使你有一个扫描仪,你可以在那里进行输入,这些值也不会保存。如果要保存这些值,应在扫描仪输入下创建另一个属性,该属性应保存这些值。

11 12
之后按enter键,否则扫描仪无法识别它。

难以置信,我在这个问题上花了5个小时,我所要做的就是按下按钮enter@RadoslavIvanov我建议看一下医生,这很有帮助。