stream流List对象转LinkedHashMap
时间: 2024-08-09 12:00:47 浏览: 110
Stream API在Java 8中引入,它是一种高效处理集合数据的方式。如果你想将一个`List`对象转换为`LinkedHashMap`,通常你会先创建一个新的`LinkedHashMap`,然后使用`forEach`方法遍历`List`并将元素添加到`LinkedHashMap`中。这是因为`List`本身并不支持直接转换为`LinkedHashMap`,因为它们的数据结构和存储特性不同。
下面是一个简单的示例:
```java
import java.util.*;
import java.util.stream.*;
public class StreamExample {
public static void main(String[] args) {
// 假设我们有一个List<String>
List<String> list = Arrays.asList("A", "B", "C");
// 创建一个新的LinkedHashMap
LinkedHashMap<String, Integer> linkedMap = new LinkedHashMap<>();
// 使用stream API将list内容转换并添加到linkedMap
list.stream()
.forEach(key -> linkedMap.put(key, linkedMap.size()));
// 输出LinkedHashMap的内容
for (Map.Entry<String, Integer> entry : linkedMap.entrySet()) {
System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
}
}
```
在这个例子中,我们将每个列表元素作为`LinkedHashMap`的键,并将其值设置为当前键的数量(即插入位置),保证了原始顺序。
阅读全文