Java 8 - return 列表(键集)反对列表<Map.Entry<Integer, CheckBox>>

Java 8 - return List (keyset) opposed to List<Map.Entry<Integer, CheckBox>>

我正在尝试使用 java 8 来 return 我一个关键值(整数)列表,其中选中了值(复选框)。我正在尝试处理的地图具有以下形式。

Map<Integer, CheckBox> 

目的是return为选中复选框值的所有值设置键。

如果我执行以下操作

checkBoxes.entrySet().stream().filter(c -> c.getValue().getValue())
                .collect(Collectors.toList());

然后我返回一个 List<Map.Entry<Integer, CheckBox>> 是否可以在一行中完成所有这些而不处理 Map.Entry 值,这样我就可以获得一个整数列表?

谢谢

您可以添加一个 map 调用以从条目中提取密钥:

List<Integer> keys = checkBoxes.entrySet().stream()
            .filter(c -> c.getValue().getValue())
            .map(Map.Entry::getKey)
            .collect(Collectors.toList());