list转map减少for循环
时间: 2023-10-31 22:54:02 浏览: 44
您可以使用Java 8的流(Stream)来将列表(List)转换为映射(Map),以减少对循环的依赖。下面是一个示例代码:
```java
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> list = List.of("apple", "banana", "orange");
// 将列表转换为映射,其中键为列表元素,值为元素的长度
Map<String, Integer> map = list.stream()
.collect(Collectors.toMap(
element -> element, // 键为列表元素
element -> element.length())); // 值为元素的长度
System.out.println(map);
}
}
```
在上述示例中,我们使用`stream()`方法将列表转换为流,然后使用`collect(Collectors.toMap(...))`方法将流中的元素收集到一个映射中。其中,第一个参数是键的提取函数,第二个参数是值的提取函数。
运行上述代码将输出以下结果:
```
{orange=6, banana=6, apple=5}
```
这样就成功将列表转换为了映射,并且减少了对显式循环的需求。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)