为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

MYYA 2022-06-23 20:34:05
我正在尝试解决以下问题。如何从“流”中的“条件”中找到值?目前我只能使用“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) {        ...    }}   
查看完整描述

1 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

利用allMatch

stream.filter(line -> Stream.of(conditions).allMatch(line::contains))


查看完整回答
反对 回复 2022-06-23
  • 1 回答
  • 0 关注
  • 87 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信