gpt4 book ai didi

java - 克隆新对象以传递给 ArrayList?

转载 作者:太空狗 更新时间:2023-10-29 16:43:57 25 4
gpt4 key购买 nike

我正在构建一个 Android 应用程序,我试图将对象添加到 ArrayList。我认为这会在 ArrayList 中创建对象的副本,然后我可以重用该对象。我意识到情况并非如此,ArryList 实际上是在引用原始对象。

我不太确定如何使用循环在 onCreate 函数中创建新对象,所以我是否需要以某种方式克隆对象并将其传递给 ArrayList?

无论如何,这是我的代码:

 public class Main extends Activity {
private Item myItem = new Item();

btnSave.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
alItems.add(myItem);
arrayAdapter.notifyDataSetChanged();

最佳答案

您可以创建一个 copy constructor在您的 Item 类中,并使用它来创建对象的副本。

public class Item {
private int field1;
public Item() { }

public Item(Item item) {
this.field1 = item.field1;
}
}

然后使用以下方法将您的对象添加到列表中:-

alItems.add(new Item(myItem));

关于java - 克隆新对象以传递给 ArrayList?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13240465/

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