gpt4 book ai didi

Java 8 - 将光元素从另一个 map 放在目标 map 中

转载 作者:行者123 更新时间:2023-11-30 06:40:27 24 4
gpt4 key购买 nike

我的代码是:

Map<String, Application> applications = new HashMap<>();

// add elements to applications here ...

applications.forEach((key, app) -> { System.out.println(key + " " + app.getHomeUrl()); });

Map<String, String> apps = new HashMap<>();
applications.forEach((key, app) -> { apps.put(key, app.getHomeUrl()); });
metrics.setApplications(apps);

但我正在寻找如何使用简单的过滤器而不使用临时 map (应用程序)?

控制台:

xxxx https://xxxx.github.io/xxxx.io
githubapi null
google http://www.google.fr
demo null
yyyy https://yyyy.github.io/yyyy.io

最佳答案

避免创建 apps 变量的一种方法是

metrics.setApplications(applications.entrySet().stream()
.filter(e -> e.getValue().getHomeUrl() != null) // filter out entries with null homeUrl
.collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue().getHomeUrl())));

toMapapplications Map 收集 key 并将值映射到 homeUrl同时收集各自的条目。

关于Java 8 - 将光元素从另一个 map 放在目标 map 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58010543/

24 4 0