在Java中从控制台读取多行,发出最后一行

时间:2016-03-22 14:41:41

标签: java console lines

我想从控制台加载多行。我将文本粘贴到控制台,此文本有更多行。最后一行不想加载,因为缺少\ n。我无法在控制台中添加\ n,因为当我粘贴它时,它会立即运行。另一个问题是虽然不想结束。它加载了最后一行的所有内容并且不会结束。

        Scanner input = new Scanner(System.in); 
        List<String> lines = new ArrayList<String>();
        String lineNew;

        while (input.hasNextLine()) {
            lineNew = input.nextLine();
            System.out.println(lineNew);
            lines.add(lineNew);         
        }

2 个答案:

答案 0 :(得分:0)

如果您的输入太短,可以添加一个检查,如果是,则休息。

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Lines {
    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);
        List<String> lines = new ArrayList<String>();
        String lineNew;

        while (input.hasNextLine()) {
            lineNew = input.nextLine();
            if (lineNew.isEmpty()) {
                break;
            }
            System.out.println(lineNew);
            lines.add(lineNew);
        }

        System.out.println("Content of List<String> lines:");
        for (String string : lines) {
            System.out.println(string);
        }
    }
}

答案 1 :(得分:-2)

你应该按ctrl + z(ctrl + d)来终止它。