资讯专栏INFORMATION COLUMN

【转】把listA通过“=”赋值给listB,然后对listA进行clear清空,第二个listB也

geekidentity / 2382人阅读

摘要:举个栗子清空后发现也清空了。此时对象相当与对象的引用,而并不是将对象的值单纯的传递给对象。即对象的操作将直接改变对象。如结果中也包含了单纯的把值赋予对方方式多种。如下方式一方式二方式三方式四文章转自

举个栗子

ArrayList A= new ArrayList();
A.add("1");
A.add("2");
ArrayList B = new ArrayList();;
B = A;
A.clear();

A清空后发现B也清空了。
此时B对象相当与A对象的引用,而并不是将A对象的值单纯的传递给B对象。即:B对象的操作将直接改变A对象。如B.add("3");结果A中也包含了“3”;

2.单纯的把值赋予对方方式多种。如下:

方式一:

ArrayList B = new ArrayList<> (A);

方式二:

ArrayList B = A.clone();

方式三:

ArrayList B = new ArrayList();
B.addAll(A);

方式四:

for(String s: A)
 B.add(s);

文章转自https://blog.csdn.net/w305172...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74847.html

相关文章

  • 用 JavaScript 实现链表操作 - 07 Append

    摘要:需求实现一个函数,把两个链表连接起来,并返回连接后的链表头结点。递归版本本身就可以作为递归的逻辑。实际上等于,直到递归到末尾,这时直接返回即可。代码如下参考资料的代码实现的测试 TL;DR 把一个链表连接到另一个链表的末尾。系列目录见 前言和目录 。 需求 实现一个 append() 函数,把两个链表连接起来,并返回连接后的链表头结点。 var listA = 1 -> 2 -> 3 ...

    jone5679 评论0 收藏0
  • Immutable源码解析与性能优化

    摘要:修改的节点和该父级链路上都变成新的对象显然是最优方案。如果你对比的两个中,一个被过,另一个数据又是由其衍生出来的,那效率将是最高的算法的原理与优化检测本地中是否存在已过当前对象字符串。 Immutable原理解析 简介 what is Immutable 1.不可变,一成不变的 2.对immutable数据的每次修改操作都会返回一个新的data 掏出一副老生常谈的图 showImg(h...

    233jl 评论0 收藏0
  • python-数据类型之列表

    摘要:是处理一组有序项目的数据结构,是中使用最频繁的数据结构实现,可以完成大多数数据集合类的数据结构实现。支持字符数字字符串甚至还可以嵌套列表元组字典等。一列表的创建是表示,内部元素间用逗号隔开。 List是处理一组有序项目的数据结构,是python中使用最频繁的数据结构实现,可以完成大多数数据集合类的数据结构实现。支持字符、数字、字符串甚至还可以嵌套列表、元组、字典等。 (一)列表的创建(...

    Fourierr 评论0 收藏0
  • 「翻译」在Forge Viewer上实作简易的模型版本比较

    摘要:现在让我们修改这个示例让他可以展示两个同项目但不同版号的模型及。示例执行结果如下这边是这个比较模型的括展代码英文原文 showImg(https://segmentfault.com/img/bVOmjp?w=1542&h=925); 熟悉 BIM360 Team 的朋友可能知道他有一个很牛的模型文档版本比较的功能,但如果模型是放在 Google 云盘或是百度云盘上有可能做到吗? Au...

    JowayYoung 评论0 收藏0
  • Python List交集,并集,差集及应用

    生成了两个List: A = [apple,apple,banana] B = [banana,apple,banana] 交集,并集,差集概念这里不说,python代码如下: #! /usr/bin/env python # coding:utf-8 listA = [1, 2, 3, 4, 5, 6] listB = [4, 5, 6, 7] # Intersection inte = l...

    learning 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<