List<OrgUnitProRelationDto> relationDtoList 转换成Map ehrUnitCode 为key; unitCode为value
时间: 2024-02-23 08:02:02 浏览: 56
可以使用Java 8的Stream API来实现这个转换过程,具体代码如下:
```
Map<String, String> map = relationDtoList.stream()
.collect(Collectors.toMap(OrgUnitProRelationDto::getEhrUnitCode, OrgUnitProRelationDto::getUnitCode));
```
这段代码中,我们首先调用`stream()`方法将`relationDtoList`转换成Java 8中的Stream对象。然后使用`Collectors.toMap()`方法将Stream中的每个元素转换成一个键值对,其中键为`OrgUnitProRelationDto`对象的`ehrUnitCode`属性,值为`OrgUnitProRelationDto`对象的`unitCode`属性。最终得到的结果就是一个Map对象,其中键为`ehrUnitCode`,值为`unitCode`。
相关问题
OrgEmployeeProDto 包含字段empCode和empName List<OrgEmployeeProDto> employeeProDtoList 转换成Map<String, String> map map的key值为empCode,value值为empName
可以使用Java 8的流式操作来实现这个转换过程,具体代码如下:
```
Map<String, String> map = employeeProDtoList.stream()
.collect(Collectors.toMap(OrgEmployeeProDto::getEmpCode, OrgEmployeeProDto::getEmpName));
```
这段代码将List<OrgEmployeeProDto> employeeProDtoList转换成了Map<String, String> map,其中map的key值为每个OrgEmployeeProDto对象的empCode属性,value值为每个OrgEmployeeProDto对象的empName属性。
Map<String, List<String>> listMap Map<String, List<String>> listMap 相组合叠加key相同不替换
如果你想将两个 `Map<String, List<String>>` 进行组合叠加,可以使用以下代码:
```java
Map<String, List<String>> map1 = new HashMap<>();
Map<String, List<String>> map2 = new HashMap<>();
// 假设 map1 和 map2 已经初始化并填充了数据
for (Map.Entry<String, List<String>> entry : map2.entrySet()) {
String key = entry.getKey();
List<String> value = entry.getValue();
List<String> existingValue = map1.get(key);
if (existingValue == null) {
map1.put(key, value);
} else {
existingValue.addAll(value);
}
}
```
这段代码会将 `map2` 的所有键值对合并到 `map1` 中,如果 `map1` 中已经存在相同的键,则将其对应的值合并,而不是替换。
阅读全文