首页 > Java > java教程 > 将 ArrayList 分配给新引用如何影响原始对象?

将 ArrayList 分配给新引用如何影响原始对象?

Patricia Arquette
发布: 2024-11-20 12:47:11
原创
425 人浏览过

How does assigning an ArrayList to a new reference affect the original object?

Java ArrayList 赋值中的对象引用

当 ArrayList l1 被赋值给新的引用 l2 时,l1 和 l2 不会指向不同的ArrayList 对象。相反,l2 接收到与 l1 相同的 ArrayList 对象的引用。这称为浅复制。

通过 l1 或 l2 修改列表对象将反映在两个引用中。如示例所示:

List<Integer> l1 = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
    l1.add(i);
}

List l2 = l1;
l2.clear();
登录后复制

l1 和 l2 都引用同一个对象,因此通过 l2 清除列表也会影响 l1。

要创建 ArrayList 对象的副本,应创建包含原始元素副本的新列表。实现此目的的一种方法是使用 ArrayList(Collection extends E> c) 构造函数,其中 c 是原始集合:

List<Integer> newList = new ArrayList<>(l1);
登录后复制

这将创建一个新的 ArrayList 对象,其中包含单独的引用和副本来自 l1 的元素。

以上是将 ArrayList 分配给新引用如何影响原始对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板