如何在流中查找字符串数组的值

我正在尝试解决以下问题。


如何从“流”中的“条件”中找到值?目前我只能使用“line.contains 方法”进行过滤。但我希望用户可以给出一些条件,这些条件将保存在数组“条件”中。我试图在 stream.filter 中构建一个 for 循环,但失败了。^^ 也许你知道一种有效的方法。:)


谢谢。


private static void streamSelectedFile(String p, String[] conditions) {

    try (

        Stream<String> stream = Files.lines(Paths.get(p), StandardCharsets.ISO_8859_1)) {       

        Stream<String> filteredStream = 

                stream.filter(line -> line.contains("conditionValue"));     

        filteredStream.forEach(elem -> {

            System.out.println(elem + " Path: " + p);

        });

    } catch (IOException e) {

        ...

    }

}   


MYYA
浏览 88回答 1
1回答

慕码人2483693

利用allMatchstream.filter(line&nbsp;->&nbsp;Stream.of(conditions).allMatch(line::contains))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java