我们有一个项目列表:List<X>
从这个列表,我们想创建Map<F(X), X>
使用Guava com.google.common.collect,有一个Maps.uniqueIndex方法,它将List作为输入,并允许我们将一个函数应用于元素.
这一切都很棒.例如:
List<File> to Map<String, File>
mapOfFileNames = Maps.uniqueIndex(fileList, new Function<File, String>() {
@Override
public String apply(@Nullable File input) {
return input.getName();
}
});
Run Code Online (Sandbox Code Playgroud)
我的问题是,我们如何能弄个位置的当前项目用时列表中(指数)Maps.uniqueIndex
例如,转换List<File> to Map<Integer, File>
我希望键是List中File元素的位置.因此我需要访问当前元素的索引.
你知道这怎么可能吗?
谢谢