社区
Java SE
帖子详情
数组的浅拷贝
不安分的猿人
2013-07-02 09:41:14
数组的浅拷贝,对象的浅拷贝,如何理解,大牛们帮忙解释一下。
...全文
261
2
打赏
收藏
数组的浅拷贝
数组的浅拷贝,对象的浅拷贝,如何理解,大牛们帮忙解释一下。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lcf
2013-07-02
打赏
举报
回复
浅拷贝就是只复制引用,不复制实体。 你有老婆儿子,又去找了个小三,后来你跟老婆离婚跟小三结婚,你儿子就叫小三一声妈,这就是对象的浅拷贝。深拷贝,就是你克隆了一个儿子,克隆体叫你小三妈,亲儿子还是不认得你小三是谁 至于数组,就是你生了俩儿子,其余一样
oh_Maxy
2013-07-02
打赏
举报
回复
打个比方: 我有一台电视机和遥控器,你也想要一个,于是你买了一个遥控器,虽然也能实现遥控我的电视机,实际上,电视机的数量没变; 你看到我的电视机,知道是国产熊猫牌,于是自己也买了一台一样的电视机。这时候,你在自己的房间,用自己的遥控器遥控自己的电视机; 遥控器可以当做索引理解,电视机就是对象的实体:Object ob = new Object();这里ob就是遥控器,new Object()就是真正的对象实体。我们通过ob这个索引(或称呼为句柄)来操作这个对象实体。
数组
的
浅拷贝
和深拷贝
数组
的
浅拷贝
和深拷贝 1、
数组
浅拷贝
:(直接赋值) var arr1 = [1, 2, 3, 4]; var arr2 = arr1; arr1[0] = 6; //
数组
是用堆去保存的,相等的时候->只是把存放的地址拷贝过去了,两个指向了同一个地址,所以在改变其中一个
数组
的值时,另一个
数组
的值也跟着改变了。 console.log(arr2[0]); // 输出结果为6 console.log(arr1); // [6, 2, 3, 4] console.log(arr2); // [6, 2, 3
数组
、对象、
浅拷贝
与深拷贝
本文总结了
数组
和对象在前端开发中的常用操作,重点介绍了
浅拷贝
与深拷贝的概念。
数组
部分详细说明了修改原
数组
的方法(如push/pop)和不修改原
数组
的方法(如concat/slice),以及迭代方法。对象部分介绍了基本操作和Object工具方法(如assign/keys)。
浅拷贝
仅复制顶层属性,适用于简单结构;深拷贝通过递归或JSON方法实现完全独立复制,解决了嵌套引用问题。文章还提供了一个完整的深拷贝函数实现,处理了各种数据类型和循环引用情况。这些知识点对前端开发者处理数据结构具有实用参考价值。
Java中
数组
的深拷贝和
浅拷贝
一、
数组
浅拷贝
的4种方式 1. 使用 copyOf() 方法对
数组
进行复制 jdk1.8的API文档中关于Arrays的copyOf方法: static boolean[] copyOf(boolean[]original, intnewLength) 使用 false (如有必要)复制指定的
数组
,截断或填充,以使副本具有指定的长度。 static byte[] copyOf(byte[]original, intnewLength)...
如何实现
数组
深拷贝和
浅拷贝
?
这里是修真院前端小课堂,每篇分享文从 【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】 八个方面深度解析前端知识/技能,本篇分享的是: 【如何实现
数组
深拷贝和
浅拷贝
?】 大家好,我是IT修真院北京总院第24期的学员,一枚正直纯洁善良的web程序员 今天给大家分享一下,修真院官网JS任务4,深度思考中的知识点——如何实现
数组
深拷贝和
浅拷贝
...
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章