如何将此流的内容添加到链接列表中?

时间:2017-11-04 18:59:18

标签: java csv

我需要从CSV文件中读取并将内容添加到链接列表中,以便我可以搜索某些数据。目前,CSV的结果已输入流中,但我不知道如何将其放入链接列表中。我的代码如下:

    String fileName = "Catalogue.csv";
    LinkedList<String>catalogue = new LinkedList();

    try (Stream<String> stream = Files.lines(Paths.get(fileName))) {

                stream.forEach(System.out::println);

    } catch (IOException e) {
        e.printStackTrace();
    }

2 个答案:

答案 0 :(得分:1)

像以下一个衬垫应该有效:

catalogue = stream.collect(Collectors.toCollection(LinkedList::new));

您可以在此处参考Collectors doc hereLinkedList doc。正如上面的评论中所提到的,在这种情况下,我不建议您不必要地使用LinkedList,因为它会使您的代码跟随速度变慢。

答案 1 :(得分:1)

如果您确切需要LinkedList,则只需收集您的信息流:

stream.collect(Collectors.toCollection(LinkedList::new));

或者,如果已经创建了列表:

stream.forEach(catalogue::add);