gpt4 book ai didi

java - 如果他的列表满足条件,如何使用 Collection remove?

转载 作者:行者123 更新时间:2023-12-01 09:17:55 24 4
gpt4 key购买 nike

我有一个包含一些 Person 对象的列表。这是我的 Person 类:

public class Person(){
// contructors

private String lastname;

private String firstname;

private List<Place> places;

// getters and setters
}

我的 Place 类是:

public class Place(){
// contructors

private String town;

// getters and setters
}

我有代码可以从 person 中删除一些地方:

List<Person> persons = new ArrayList<Person>();
// adding persons to List
// Below i want to remove person whose place is in town Paris.
persons.removeIf((Person person)-> person.getPlaces(???));

我想从 Place 满足以下条件的列表中删除一个人 place.getTown()=="Paris"

这段代码怎么写?

最佳答案

向 Person 类添加方法 hasPlace:

public boolean hasPlace(String townName) {
return places.stream()
.map(Place::getTown)
.anyMatch(townName::equals);
}

然后,您可以在给定 removeIf 语句的谓词中使用它:

persons.removeIf(person -> person.hasPlace("Paris"));

关于java - 如果他的列表满足条件,如何使用 Collection remove?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47991682/

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