java - 如果哈希图过滤器收集器java 8中的条件为真,请执行某些操作
问题描述
我有地图,其中键是字符串,值是 Employee 对象。它看起来像 Map,我是 Java 8 的新手,处于学习阶段
Map<String, Employee> cond_Map = new LinkedHashMap<String, Employee>();
if(Obj.getEmp == null){
cond_Map.forEach((key, value) -> {
if(key == "one"){
Obj.setEmp(value);
}
});
}
我尝试使用过滤器将其制作成单行且简单,
cond_Map.entrySet().stream().filter(key -> Python3Parser.If_stmtContext.class.isInstance(key.getKey())).collect(???);
但它不会工作..!有人有想法吗?谢谢你。
解决方案
您无需遍历地图即可找到具有匹配键的条目。按键查找条目是地图的工作:
if(Obj.getEmp == null && cond_Map.containsKey("one")){
Obj.setEmp(cond_Map.get("one"));
}
推荐阅读
- node.js - 如果失败 X 次,nodejs sendMessage 函数
- c# - 文本模板(.tt 文件),定义数组并迭代多种类型的生成方法
- android - 为什么 Kivy Plyer Storagepath 不将文件保存到 Android 主目录和应用目录?
- jquery - Jquery仅在选项选择表后显示结果
- node.js - Firebase 云功能需要“增量”的内存限制
- keystonejs - Keystone JS (generator-keystone) npm install 失败
- react-redux - 这个 Redux applyMiddleware 有什么问题,因为它只适用于一个
- json - 如何在 SWIFT 中解析 JSONObject
- haskell - 无法将预期类型 [a] 与实际类型 Maybe[a] 匹配
- ruby - 在 Ruby 中动态调整数字