问题:
List<A> list=new List();
A ab=......;
A a =new A();
list.add(a);
a = ab;
list=???
答:list中a对应的值变为ab
。
代码测试:
实体类PersonEntity
,省去了getter,setter,tostring方法;
public class PersonEntity {
String name;
String position;
Integer age;
public PersonEntity(String name, String position, Integer age) {
this.name = name;
this.position = position;
this.age = age;
}
getter,setter,tostring
}
测试main:
import java.util.ArrayList;
import java.util.List;
public class mainTest {
public List<PersonEntity> initPersonList() {
List<PersonEntity> personEntityList = new ArrayList<PersonEntity>();
PersonEntity personEntity_b = new PersonEntity("Bname", "P2", 2);
personEntityList.add(new PersonEntity("Aname", "P1", 1));
personEntityList.add(personEntity_b);
personEntityList.stream().forEach(per -> System.out.println(per.toString()));
personEntity_b.setName("BnameChanged");
personEntity_b.setPosition("P2Changed");
System.out.println("after:");
personEntityList.stream().forEach(per -> System.out.println(per.toString()));
return personEntityList;
}
public static void main(String[] args) {
mainTest mainTest = new mainTest();
mainTest.initPersonList();
}
}
测试结果:
PersonEntity{name=‘Aname’, position=‘P1’, age=1}
PersonEntity{name=‘Bname’, position=‘P2’, age=2} after:
PersonEntity{name=‘Aname’, position=‘P1’, age=1}
PersonEntity{name=‘BnameChanged’, position=‘P2Changed’, age=2}