gpt4 book ai didi

java - 我怎样才能从我的java集合中删除项目

转载 作者:行者123 更新时间:2023-12-01 16:47:38 24 4
gpt4 key购买 nike

    Members m = new Members(membersId, membersName, membersAge,
membersGender);
lib.addnewMembers(m);

如何添加删除方法?如何仅通过提供 membersId 来删除任何内容?我在library.java中使用了迭代器,这是我在集合中添加成员的代码:

@覆盖

public String toString() {
String total = "\n";
Iterator<Members> i = collection.iterator();
while (i.hasNext()) {
Members m = (Members) i.next();
total = total + m.toString();
}
return total;
}

最佳答案

删除方法类似于:

//java8
public void remove(List<Member> members, long memberId) {
members.stream().filter(m -> !m.getId() == memberId).collect(Collectors.toList());
}
//group Ids to delete
public void remove(List<Member> members, List<Long> memberIds) {
members.stream().filter(m -> !memberIds.contains(m.getId()).collect(Collectors.toList());
}

// before java8
public void remove(List<Member> members, long memberId) {
Iterator<Member> mi = members.iteator();
while (mi.hasNext()){
Member m = mi.next();
if(m.getId() == memberId) {
mi.remove();
}
}
}
public void remove(List<Member> members, List<Long> memberIds) {
Iterator<Member> mi = members.iteator();
while (mi.hasNext()){
Member m = mi.next();
if(memberIds.contains(m.getId())) {
mi.remove();
}
}
}

关于java - 我怎样才能从我的java集合中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61744963/

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