【发布时间】:2020-10-27 21:07:24
【问题描述】:
我有一个代码块,它返回一个值列表,但我需要按特定值分组
List<String> fixedCat =
allAuditedObservations.stream()
.filter(e -> e.getZoneNumber().matches(fixedWithoutZoo))
.map(e -> DateUtils.toLocalDateTimeFromUtcLocalDateTime(e.getObservedDtUtc()))
.map(e -> e.toLocalDate())
.distinct()
.map(e -> Date.from(e.atStartOfDay(ZoneId.systemDefault()).toInstant()))
.map(
e ->
String.valueOf(e.getTime())
.concat("--")
.concat(Observation.FIXED_CAMERA_CATEGORY))
.collect(Collectors.toList());
all.addAll(fixedCat);
返回 repose 为
[
"1603692000000--FIXED",
"1603778400000--FIXED"
]
所以我更改了上面的代码以根据区域编号获取所有观察结果
List<String> fixedCat =
allAuditedObservations.stream()
.filter(e -> e.getZoneNumber().matches(fixedWithoutZoo))
.map(
observation -> {
observation.getZoneNumber();
LocalDateTime localDateTime =
DateUtils.toLocalDateTimeFromUtcLocalDateTime(
observation.getObservedDtUtc());
LocalDate date = localDateTime.toLocalDate();
Date dateTime =
Date.from(date.atStartOfDay(ZoneId.systemDefault()).toInstant());
return String.valueOf(dateTime.getTime())
.concat("--")
.concat(Observation.FIXED_CAMERA_CATEGORY)
.concat("--")
.concat(observation.getZoneNumber());
})
.collect(Collectors.toList());
当我运行闲置代码时,我必须对每个单独的观察结果进行分组
[
"1603692000000--FIXED--7010",
"1603692000000--FIXED--7000",
"1603692000000--FIXED--7020",
"1603778400000--FIXED--7020",
"1603778400000--FIXED--7010",
"1603692000000--FIXED--7010",
"1603692000000--FIXED--7010",
"1603692000000--FIXED--7010"
]
预期的反应
[
"1603692000000--FIXED--7010",
"1603778400000--FIXED--7020"
]
【问题讨论】:
-
请把你的问题说清楚,具体问一下你遇到了什么问题。 返回 repose 为 - 对我们来说不是线索。
-
@GiorgiTsiklauri 已按区域编号对结果进行分组
标签: java lambda lightweight-stream-api