Map<String, DevPortReportEsDTO> listMap value转成List
时间: 2023-07-16 22:14:37 浏览: 37
可以使用Java 8的stream和lambda表达式来将Map<String, DevPortReportEsDTO>的value转换成List<DevPortReportEsDTO>。具体实现如下:
```java
Map<String, DevPortReportEsDTO> listMap = new HashMap<>();
// 假设已经给listMap赋值
List<DevPortReportEsDTO> list = listMap.values().stream()
.collect(Collectors.toList());
```
上述代码中,首先使用`listMap.values()`方法获取Map中所有的value,然后通过stream()方法将其转换成Java 8中的Stream对象。最后使用`Collectors.toList()`方法将Stream中的元素转换成List类型。
相关问题
Map<String, DevPortReportEsDTO> listMap 转成list
可以通过将 Map 中的 value 转成 List 来实现,示例代码如下:
```java
List<DevPortReportEsDTO> list = new ArrayList<>(listMap.values());
```
这里使用了 Map 的 values() 方法获取所有的 value 值,然后通过 ArrayList 构造函数将其转化为 List。需要注意的是,这里的顺序可能会与原来的 Map 不同,因为 Map 中的元素是无序的。
Map<String,List<String>>转 Map<String,String>
可以通过遍历Map<String,List<String>>,将List<String>转化为String,然后将其放入新的Map<String,String>中。具体实现如下所示:
```java
Map<String, List<String>> map1 = new HashMap<>();
Map<String, String> map2 = new HashMap<>();
for (Map.Entry<String, List<String>> entry : map1.entrySet()) {
String key = entry.getKey();
List<String> valueList = entry.getValue();
StringBuilder sb = new StringBuilder();
for (String value : valueList) {
sb.append(value);
}
map2.put(key, sb.toString());
}
```