首页 > 解决方案 > 如何将临时 ArrayList 中的元素复制到新创建对象中的私有 ArrayList 中?

问题描述

我正在为我的学校项目编写一个 JavaFX 程序。所以我有 2 个类Product和控制器类。

Product类内部,我有一个ArrayList存储Product该类创建的每个对象中的部分。这ArrayList是并且private只能通过方法addAssociatedPart和访问。deleteAssociatedPartsgetAllAssociatedParts

在控制器类中,我有一个临时ArrayList存储所述部件,直到用户点击保存按钮。

点击保存按钮后,我想将临时列表的内容复制到对象 privateArrayList中。

我试图在网上搜索,但发现我无法使用Collections.copyclone方法。

同样在点击保存按钮时,控制器类Product从用户填充的文本字段创建对象。

感谢您的时间和耐心!

标签: javajavafxarraylist

解决方案


您可以使用addAllinsideArrayList将所有成员添加到您的私人列表中;

public void addAssociatedPart(List<Product> productsToAdd) {
   this.privateProducts.addAll(productsToAdd);
}

公共布尔addAll(集合c)

按照指定集合的​​迭代器返回的顺序,将指定集合中的所有元素附加到此列表的末尾。如果在操作正在进行时修改了指定的集合,则此操作的行为是未定义的。(这意味着如果指定的集合是这个列表,并且这个列表是非空的,那么这个调用的行为是未定义的。)


推荐阅读