gpt4 book ai didi

java - 在 Java 中从 List 中提取 Map 的最短方法

转载 作者:行者123 更新时间:2023-11-29 06:32:19 25 4
gpt4 key购买 nike

我有一个列表

List<FeatureHolder> featureHolderList;

由 FeatureHolder 对象组成

public class FeatureHolder {
private String flag;
private String value;
}

现在我需要从 featureSetList 中提取 map 。当然,解决方案很简单:

    Map<String, String> map = new HashMap<>();
for(FeatureHolder fh: featureHolderList){
map.put(fh.getFlag(), fh.getValue());
}

问题是,在 Java 7 中是否有更好(更短)的方法?我调查过例如Google Collection 和方法 Maps.uniqueIndex ,但是以这种方式执行转换所需的代码会更长,而且可以说可读性较差。

最佳答案

使用 Java 7,您的代码没问题。

或者你可以使用 Java 8

Map<String, Item> map = list.stream()
.collect(Collectors.toMap(Item::getKey,
item -> item));

关于java - 在 Java 中从 List 中提取 Map 的最短方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30592509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com