想要一个列表<abc>转换为MAP <var,list <abc =“”>&gt;

时间:2015-10-08 04:52:27

标签: java guava

是否有任何可以将LIST转换为MAP的番石榴实用程序&gt;。 (var是Objects的属性。 我有一个列表,ABC有一个变量var。我想创建一个地图,以便所有具有相同var值的ABC对象应该在列表中进行分组,因此我应该能够获得具有相同var值的ABC列表。但我想为此使用一些番石榴实用程序。我不想使用regalar foreach block来填充它。

1 个答案:

答案 0 :(得分:1)

听起来你正在寻找Multimaps.index(Iterable<ABC>, Function<? super ABC, ? extends T>),它会给你一个ImmutableListMultimap<T, ABC>

然后,您可以调用ImmutableListMultimap.asMap()将其设为Map<T, List<ABC>(或者实际上可能是Map<T, Collection<ABC>> - 但收藏品将是列表。)