Guava有一个静态方法Maps.uniqueIndex(Iterable<V> values, Function<? super V,K> keyFunction)
,它通过应用于各个元素的输入函数的结果映射输入集合中的每个条目。
是否有相当于此功能的集合(其中返回值不是地图而是集合)?
答案 0 :(得分:3)
一些替代方案:
Maps.uniqueIndex(values, keyFunction).keySet();
ImmutableSet.copyOf(Collections2.transform(values, function));
答案 1 :(得分:0)
我实际上找到了一个直接的解决方案:
FluentIterable.from(values).transform(keyFunction).toSet();