gpt4 book ai didi

Java 8 如何使用数组中的 id 从 arraylist 中删除项目

转载 作者:行者123 更新时间:2023-11-30 07:41:37 25 4
gpt4 key购买 nike

如何使用数组中的 id 从数组列表中删除项目。我试过:

List <Group> loadedGroupList = iGroupRepository.findAll();
String [] groupIds = StringUtils.split(selectionGroupsIds, ',');

for (int i = 0 ; i < groupIds.length; i++) {
String groupId = groupIds[i];
loadedGroupList.removeIf(x -> x.getId() != Long.parseLong(groupId));
}

但是我得到一个空的数组列表。请帮忙。谢谢。

最佳答案

groupIds是一个 String数组,转换成List<String>并使用 contains()

删除 Group如果 groupId 在 groupIds 数组中,则来自 loadedGroupList

loadedGroupList.removeIf(x -> Arrays.asList(groupIds).contains(x.getId()));

删除 Group如果 groupId 不在 groupIds 数组中,则来自 loadedGroupList

loadedGroupList.removeIf(x -> !Arrays.asList(groupIds).contains(x.getId()));

通过使用 java-8流,过滤器 Group没有 idString数组 groupIds

List<Group> result = loadedGroupList.stream()
.filter(x->!Arrays.asList(groupIds).contains(x.getId()))
.collect(Collectors.toList());

关于Java 8 如何使用数组中的 id 从 arraylist 中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55876856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com