首页 > 解决方案 > 检查 Vector 的值是否在 Set 中

问题描述

我正在尝试查找向量是否包含集合中的任何值,如果它抛出异常,这是我尝试过的,不知道它是否正确,但没有给出结果:

//This method returns of List type itself.
List<String> listUniqueIds = DataAccessSessionBeanBase.queryToVector(strQuery);

//gives a set of strings
HashSet<String> setUniqueIds = getUniqueIds(objRtElement);
for(String strUniqueId : setUniqueIds)
{
    System.out.println("strUniqueId : "+strUniqueId);
    if(vecUniqueIds.contains(strUniqueId))
    {
        throw new Exception("Incorrect values");
    }
}

标签: javavectorset

解决方案


您正在做的事情没有错,但是如果您想使用 Java 8 流,您可以尝试:

if(setUniqueIds.stream().filter(listUniqueIds::contains).findAny().isPresent()) {
    throw new Exception("Incorrect values");
}

推荐阅读