首页 > 解决方案 > 如何以方便的方式检查多个元素中的任何一个是否在列表中?

问题描述

我正在尝试编写以下条件:

if(javaList.contains("aaa")||javaList.contains("abc")||javaList.contains("abc")) {
    //do something
}

我怎样才能以更好的方式做到这一点?

标签: javalambdajava-8

解决方案


contains在 a上运行通常Set比在 a 上运行更有效List。因此,我建议您创建一个Set要测试的元素,然后流式传输List以查看其任何元素是否匹配:

怎么样:

if (javaList.stream().anyMatch(e -> Set.of("aaa","abc","def").contains(e)))

推荐阅读