【发布时间】:2021-11-20 19:33:42
【问题描述】:
您好,我有一个流集合,我按创建日期对其进行了排序,我需要从该集合中删除所有元素,但要删除最后一个:
这是我的代码:
List<com.spotify.docker.client.messages.Image> response = dockerClient.listImages()
.stream()
.filter(image -> image.labels() != null && image.labels().containsKey("wantedLabel"))
.sorted((o1, o2) -> o2.created().compareTo(o1.created()))
.collect(
Collectors.toList());
在这个列表中,我的元素按创建日期排序,我需要删除除最后一个之外的所有元素。
我试过类似的东西:
if (response.stream().iterator().hasNext()) {
response.remove(count);
count++;
}
但我想要更复杂的东西,谢谢!
【问题讨论】:
-
你不能创建一个只包含
List.of(response.get(response.size() - 1)或类似的最后一个元素的新列表吗? -
我需要使用 dockerClient.removeImage(image.id());删除所有 docker 图像,减去最后一个
标签: java collections java-stream spotify-docker-client