老铁们,这为啥会 是同一个对象呢
您的每一个用心回答,都会让这个世界变得更美好一些!
对象add入list中时,放入list中的其实是对象的引用,虽然每次都有重新的set和get,但是实质上是同一个对象,每次都是重新的赋值后覆盖之前的数据,所以循环的都是重复数据
contactor:“你TM只创建了我一个对象,只不过我一直在换皮肤,你还想拥有谁,死渣男”
你cursor数据是怎么写的呢 有没有一种可能 cursor里的数据就只有两个一模一样的数据
public class Main { public static void main(String[] args) throws ParseException { Car car = new Car(); List<Car> m = new ArrayList<>(); for (int i = 0; i < 10; i++) { car.setId(i); car.setName("name" + i); car.setPrice("price" + i); m.add(car); } for (Car car1 : m) { System.out.println(car.toString()); } } } class Car { private int id; private String name; private String price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPrice() { return price; } public void setPrice(String price) { this.price = price; } @Override public String toString() { return "Car{" + "id=" + id + ", name='" + name + '\'' + ", price='" + price + '\'' + '}'; } } 打印结果: Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} Car{id=9, name='name9', price='price9'} 多次循环,都是一个对象在操作Setter,所以都是同一个数据
对象add入list中时,放入list中的其实是对象的引用,虽然每次都有重新的set和get,但是实质上是同一个对象,每次都是重新的赋值后覆盖之前的数据,所以循环的都是重复数据
contactor:“你TM只创建了我一个对象,只不过我一直在换皮肤,你还想拥有谁,死渣男”
你cursor数据是怎么写的呢 有没有一种可能 cursor里的数据就只有两个一模一样的数据