给出枚举:
enum Type {
PRIMARY,
SECONDARY
}
和具有相同参数(type)的两个不同对象集:
class OldObject {
Long id;
Type type;
}
class NewObject {
Long id;
String title;
Type type;
}
...看起来像:
Set<OldObject> ...
Set<NewObject> ...
Beeing对带有Collectors和Groupings的Stream API感到困惑,我无法完成<< Map [OldObject,NewObject],并按Type分组。我能够保证两套啤酒都已满,并且能够找到对。我以为我可以从enum的流开始(但不知道这是否是一个很好的方法):
Map<OldObject, NewObject> pairs = Optional.of(Schema.values())...
Map<OldObject, NewObject> pairs = Arrays
.stream(Type.values())
.filter(oldObjectSet::contains)
.filter(newObjectSet::contains)
.collect(Collectors.toMap(oldObjectMap::get, newObjectMap::get))