为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 长沙java培训之java数组的复制

长沙java培训之java数组的复制

2013-10-15 2页 pdf 62KB 12阅读

用户头像

is_774057

暂无简介

举报
长沙java培训之java数组的复制 长沙 java培训学校欧柏泰克软件专修学院 http://www.cshope.net/JAVAkecheng/JVjishu/10151FH013.html 在 Java怎样实现对数组的复制 定义一个数组 int[] a={3,1,4,2,5}; int[] b=a; 数组 b只 是对数组 a的又一个引用,即浅拷贝。 如果改变数组 b中元素的值,其实是改变了数组 a的元素的值, 要实现深度复制,可以用 clone 或者 System.arrayCopy int[] a={3,1,4,2,5};int[] b=a....
长沙java培训之java数组的复制
长沙 java学校欧柏泰克软件专修学院 http://www.cshope.net/JAVAkecheng/JVjishu/10151FH013.html 在 Java怎样实现对数组的复制 定义一个数组 int[] a={3,1,4,2,5}; int[] b=a; 数组 b只 是对数组 a的又一个引用,即浅拷贝。 如果改变数组 b中元素的值,其实是改变了数组 a的元素的值, 要实现深度复制,可以用 clone 或者 System.arrayCopy int[] a={3,1,4,2,5};int[] b=a.clone();b[0]=10; System.out.println ( b[0]+" "+a[0] ); 但 是 clone 和 System.arrayCopy 都是对一维数组的深度复制。 对于二维数组则不一样:int[][] a={{3,1,4,2,5},{4,2}}; int[][] b=a.clone();b[0][0]=10;System.out.println(b[0][0]+" "+a[0][0]);输出为10 10所以clone并不能直接作用于二维数组。 因为 java 中没有二维数组的概念,只有数组的数组。所以二维 数组a中存储的实际上是两个一维数组的引用。当调用clone函数时, 是对这两个引用进行了复制。 要证明,只需看下面的输出 int[][] a={{3,1,4,2,5},{4, 2}};int[][] b=a.clone();b[0][0]=10;System.out.println (b[0][0]+" "+a[0][0]);System.out.println(a[0]==b[0]);第 5句输出为 true.用 clone 对二维数组进行复制,要在每一维上调用 clone 函数 int[][] a={{3,1,4,2,5},{4,2}};int[][] b=new 长沙 java培训学校欧柏泰克软件专修学院 http://www.cshope.net/JAVAkecheng/JVjishu/10151FH013.html int[a.length][];for(int i=0;i
/
本文档为【长沙java培训之java数组的复制】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索