【问题标题】:Java 8 - return List (keyset) opposed to List<Map.Entry<Integer, CheckBox>>Java 8 - 与 List<Map.Entry<Integer, CheckBox>> 相对的返回列表(键集)
【发布时间】:2015-06-23 09:51:06
【问题描述】:

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

Map<Integer, CheckBox> 

目的是为选中复选框值的所有值返回键集。

如果我执行以下操作

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

然后我得到一个List&lt;Map.Entry&lt;Integer, CheckBox&gt;&gt; 无论如何都可以在不处理 Map.Entry 值的情况下在一行中完成这一切,这样我就可以得到一个整数列表?

谢谢

【问题讨论】:

    标签: java java-8 vaadin


    【解决方案1】:

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

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

    【讨论】:

    • 完美 - 非常感谢。看起来我需要离开并进一步了解这一点,因为我不知道可以这样做。谢谢
    猜你喜欢
    • 2019-04-19
    • 2014-05-04
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    • 2017-01-28
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多