我有以下课程。
Class Person {
String value1;
List<KeyValue> keyValue;
}
Class KeyValue{
String key;
String value;
}
我希望将输出映射为Map<String, String>
,其中第一个字符串值-Key是keyValue.getValue(),它将始终是唯一的,而第二个字符串值-value是value1。
我可以简单地进行迭代并执行性能,但是有什么方法可以通过Stream运算符执行并使代码可读的格式。
对于给定人员的每个键值,请创建一个地图条目。然后,使用flatMap
运算符将所有这些流展平为一个流。最后,使用toMap
收集器将其收集到地图中。假设KeyValue.getValue
返回的值始终是唯一的,则不会发生键冲突。这是它的外观。