我有一个映射,其中值是字符串,键是列表:
Map<String, List<BoMLine>> materials
我想按值过滤这张地图;是这样的:
materials.entrySet().stream()
.filter(a -> a.getValue().stream()
.filter(l -> MaterialDao.findMaterialByName(l.getMaterial()).ispresent)
但这对我不起作用。有人有想法吗?
原文由 Nazila 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果我正确理解你的过滤条件,你想检查过滤的
Stream
你从值List
产生的任何元素,如果有,传递相应的Map
进入输出Map
。这是假设
MaterialDao.findMaterialByName(l.getMaterial())
返回boolean
。