假设我有一个非常简单的类Person,它包含姓名和地址:
然而,我的问题是当我有一个全新的人员不在集合中时。如何检查集合以查看该人是否存在,并且如果存在,则更新其地址。但是,如果他们不存在,则将其添加到列表中。我知道这很简单,但出于某种原因,我现在无法想到如何实现。我不想走创建所有名称列表的路线,比较新名称,是否在列表中等等。我宁愿保持尽可能简洁。编辑:名称将是唯一的!
public class Person {
String name;
String address;
public Person(final String name,
final String address) {
this.name = name;
this.address = address;
}
public String getName() {
return name;
}
public void setName(final String newName) {
this.name = newName;
}
public String address() {
return address;
}
public void setAddress(final String newAddress) {
this.address = newAddress;
}
}
我现在有一个包含所有已知Person对象的Set,我想仅根据他们的姓名更新其中一个人的地址。为此,我有以下内容:
persons.stream()
.filter(person -> personToUpdate.getName().equalsIgnoreCase(person.getName()))
.forEach(person -> {
person.setAddress(personToUpdate.getAddress());
});
然而,我的问题是当我有一个全新的人员不在集合中时。如何检查集合以查看该人是否存在,并且如果存在,则更新其地址。但是,如果他们不存在,则将其添加到列表中。我知道这很简单,但出于某种原因,我现在无法想到如何实现。我不想走创建所有名称列表的路线,比较新名称,是否在列表中等等。我宁愿保持尽可能简洁。编辑:名称将是唯一的!
Set
而不是Map
吗? - Joe C