我又一个list集合,现在想以下标为key,值为value封装一个map怎么操作 例如: List<Integer> list = Arrays.asList(1, 2, 3); 处理之后的key value为如下方式 "0": "a" "1": "b" "2": "c"
时间: 2023-08-21 14:07:04 浏览: 97
您可以使用Java 8的Stream API和Collectors.toMap()方法来实现将List转换为Map的操作。以下是一个示例代码:
```java
import java.util.*;
import java.util.stream.*;
public class Main {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(1, 2, 3);
Map<String, String> map = IntStream.range(0, list.size())
.boxed()
.collect(Collectors.toMap(
index -> String.valueOf(index),
index -> String.valueOf((char)('a' + index))
));
System.out.println(map);
}
}
```
输出结果将会是:
```
{"0":"a", "1":"b", "2":"c"}
```
在这个例子中,我们使用了IntStream.range()方法来生成一个从0到List的大小的整数流。然后使用boxed()方法将流中的整数装箱为Integer对象。最后,通过Collectors.toMap()方法将每个索引转换为字符串作为键,将对应字母作为值,生成一个新的Map对象。
希望这可以帮助到您!如有更多问题,请随时提问。
阅读全文