027*_*027 2 java java-8 java-stream
HistoryRecord类:
public class DataHistoryRecord {
Long dataCreatedBy;
Long dataModifiedBy;
getters & setters
}
Run Code Online (Sandbox Code Playgroud)
我有List<DataHistoryRecord>,我想用HashSet它创造独特dataCreatedBy和dataModifiedByid.
例如:如果列表有以下两条记录:
HistoryRecord1 with createdBy:1和modifiedBy:2
HistoryRecord2 with createdBy:1和modifiedBy:3
输出HashSet应该有三个值; 1,2,3
注意:请建议没有foreach的方法
你可以这样做,
Set<Long> uniqueValues = historyRecords.stream()
.flatMap(hr -> Stream.of(hr.getCreatedBy(), hr.getModifiedBy()))
.collect(Collectors.toSet());
Run Code Online (Sandbox Code Playgroud)