热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在地图java流列表中查找地图

如何解决《在地图java流列表中查找地图》经验,为你挑选了1个好方法。

我正在迭代Hashmap列表,使用以下代码查找所需的HashMap对象.

public static Map extractMap(List> mapList, String currentIp) {
    for (Map asd : mapList) {
        if (asd.get("ip").equals(currentIp)) {
            return asd;
        }
    }
    return null;
}

我在考虑使用Java 8流.这是我用来显示所需对象的代码.

public static void displayRequiredMapFromList(List> mapList, String currentIp) {
    mapList.stream().filter(e -> e.get("ip").equals(currentIp)).forEach(System.out::println);
}

我无法使用以下代码从流中获取所需的Map

public static Map extractMapByStream(List> mapList, String currentIp) {
    return mapList.stream().filter(e -> e.get("ip").equals(currentIp))
            .collect(Collectors.toMap(p -> p.getKey(), p -> p.getValue()));
}

这会导致语法错误类型不匹配:无法从Map转换为Map.我有什么需要放在这里获取地图?



1> Christoffer ..:

你什么都不想要.collect.您想要找到与谓词匹配的第一个地图.

所以你应该使用.findFirst()而不是.collect().

toMap()用于Map从流中的元素构建a .

但是你不想这样做,每个元素都已经是一个Map.


推荐阅读
author-avatar
殇心Long
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有