public List<object> test(){
List<object> objList= new ArrayList<object>();
object obj = new object();
for(int i = 0; i < 10; i++){
obj.setField(i);
objList.add(obj);
}
return objList;
}
public List<object> test(){
List<object> objList= new ArrayList<object>();
List<object> objList2= new ArrayList<object>();
for(int i = 0; i < objList2.size(); i++){
object obj = objList2.get(i);
objList.add(obj);
}
return objList;
}
以上添加最后返回的list里面数据都一样;解决办法如下:
public List<object> test(){
List<object> objList= new ArrayList<object>();
for(int i = 0; i < 10; i++){
object obj = new object();
obj.setField(i);
objList.add(obj);
}
return objList;
}
public List<object> test(){
List<object> objList= new ArrayList<object>();
List<object> objList2= new ArrayList<object>();
for(int i = 0; i < objList2.size(); i++){
object obj = new object();
obj.setField(objList2.get(i).getField());
objList.add(obj);
}
return objList;
}
举个例子
package com.test.demo;
import java.util.ArrayList;
import java.util.List;
/**
* @Description: 测试
* @Create: 2021-11-18
*/
public class test {
private static class Student{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
public static void main(String[] args) {
List<Student> objList = new ArrayList<Student>();
Student obj = new Student();//注意不同之处1
for(int i = 0; i < 10; i++){
obj.setName("张三"+i);
obj.setAge(i);
objList.add(obj);
}
System.out.println(objList);
List<Student> objList2 = new ArrayList<Student>();
for(int i = 0; i < 10; i++){
Student obj2 = new Student();//注意不同之处2,在for循环内创建了对象
obj2.setName("张三"+i);
obj2.setAge(i);
objList2.add(obj2);
}
System.out.println("==================");
System.out.println(objList2);
}
}
打印结果
Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}, Student{name='张三9', age=9}]
==================
[Student{name='张三0', age=0}, Student{name='张三1', age=1}, Student{name='张三2', age=2}, Student{name='张三3', age=3}, Student{name='张三4', age=4}, Student{name='张三5', age=5}, Student{name='张三6', age=6}, Student{name='张三7', age=7}, Student{name='张三8', age=8}, Student{name='张三9', age=9}]
借鉴:[https://blog.csdn.net/zouhaipeng/article/details/53160124]