在 Java 8 中,使用 Stream API 来处理 List<实体类>,并将实体类中的 rawItemNumber 参数作为键, process 参数作为值。对于相同的 rawItemNumber ,所对应的 process 值通过 “-” 进行拼接。实例如下: // 使用 Stream API 进行处理 Map<String, String> rawItemMap = mesBaseDataList.stream() .collect(Collectors.groupingBy( UBoardKittingData::getRawItemNumber, // 以 rawItemNumber 作为键 Collectors.mapping( UBoardKittingData::getProcess, // 映射为 process Collectors.joining("-") // 使用 "-" 拼接 ) )); 若将上述Map的Value去重在进行拼接需将 Collectors.joining("-") 替换成 Collectors.collectingAndThen( Collectors.toSet(), // 去重 set -> String.join("-", set) // 使用 "-" 拼接 )
Java8将List转成Map
点赞
收藏