java - 检查 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");
}
}
解决方案
您正在做的事情没有错,但是如果您想使用 Java 8 流,您可以尝试:
if(setUniqueIds.stream().filter(listUniqueIds::contains).findAny().isPresent()) {
throw new Exception("Incorrect values");
}
推荐阅读
- javascript - 通过node.js运行静态文件时,如何调用node.js文档中定义的函数?
- python - 返回其值重复的键
- ruby-on-rails - 如何使选择查询在 Rails 中相对更快?
- php - 关于 PHP/HTML 项目文件结构的困惑(带表单)
- python-3.x - Python3没有在类函数调用中添加“自我”
- c# - 如何以编程方式触发 C# DataGridView SelectionChanged 事件?
- javascript - React中变量更改时关闭和重新打开标签的清洁方式
- google-cloud-dataflow - Apache Beam Runner 用于生产中的单台机器
- python - PyQT:如何隐藏对话窗口中的每个对象
- c# - 循环错误,包括字符串和变量