【发布时间】:2023-03-13 21:46:01
【问题描述】:
考虑我有以下代码
public static void main(String[] args) {
Map<String, List<String>> map = new HashMap<>();
map.put("a", Arrays.asList("1", "2", "3", "4"));
map.put("b", Arrays.asList("6", "7", "4", "5"));
map.entrySet().stream().filter(t -> t.getValue()
.stream().filter(v -> Integer.valueOf(v) > 0)
.**WhatShouldIputThereToMakeitBolean**)
.collect(Collectors.toSet());
}
我想要做的是我有一个地图,它的值是字符串列表。
这些值将被转换为整数,并检查该值是否大于给定值,例如在第二个/内部过滤器中。
我可以将它分成小部分,因为我使用了两个过滤器,但从内部过滤器我无法获得布尔值,因此我将获得所需的流,然后使用 flatmat(Collection::stream) 和然后将转换为 set(以避免重复),因为两个列表都包含一个共同的值,即 4
我需要的输出必须是整数和单个集合的形式,它们将像 [1,2,3,4,5,6] 一样合并,这里的值 4 是重复的,如果它必须限制结果集中的值,如果价值小于提供的价值
我有一个简单的查询,因为我正在遍历地图,并且该地图包含列表作为值,在这里我无法从内部 filter 获取布尔值
【问题讨论】:
-
你想在场景中加入什么?
-
我不知道你在问什么。你能澄清一下吗?
-
@4castle 我正在尝试合并这些值
-
哪些值?怎么合并?您能否编辑问题以显示您想要的输出?
-
嗯,这并没有多大帮助。能否请您显示该集合应在最后存储哪些值?