使用stream流将List<String> 转成Map
时间: 2023-11-11 10:29:32 浏览: 82
可以使用 Java 8 中的流(Stream)来将 List<String> 转成 Map。具体实现代码如下:
```java
List<String> list = Arrays.asList("key1=value1", "key2=value2", "key3=value3");
Map<String, String> map = list.stream()
.map(s -> s.split("="))
.collect(Collectors.toMap(a -> a[0], a -> a[1]));
System.out.println(map);
```
上述代码中,首先将 List 中的每个字符串按照 "=" 进行分割(使用 map() 方法),然后将分割后的数组转成 Map(使用 toMap() 方法)。其中,toMap() 方法的第一个参数表示 Map 的 key,第二个参数表示 Map 的 value。
输出结果为:
```
{key1=value1, key2=value2, key3=value3}
```
相关问题
使用stream流将List<String> 转成Map,key是List里面的元素。value是常量值222
可以使用 Java 8 中的流(Stream)来将 List<String> 转成 Map,其中 key 是 List 中的元素,value 是常量值 222。具体实现代码如下:
```java
List<String> list = Arrays.asList("key1", "key2", "key3");
Map<String, Integer> map = list.stream()
.collect(Collectors.toMap(s -> s, s -> 222));
System.out.println(map);
```
上述代码中,使用 toMap() 方法将 List 中的每个元素转成 Map 的 key,将常量值 222 转成 Map 的 value。其中,toMap() 方法的第一个参数表示 Map 的 key,第二个参数表示 Map 的 value。
输出结果为:
```
{key1=222, key2=222, key3=222}
```
使用stream流将list<long>转成list<string>
可以使用stream流中的map方法将list<long>转成list<string>:
```java
List<Long> longList = Arrays.asList(1L, 2L, 3L);
List<String> stringList = longList.stream()
.map(Object::toString)
.collect(Collectors.toList());
```
在这个例子中,我们首先将longList转成一个stream流,然后使用map方法将每个元素转成字符串,最后使用collect方法将结果收集到一个新的list中。
阅读全文