java 数组的拷贝 对象数组的拷贝 System.arraycopy函数
?/*
java 數(shù)組的操作?? System類的arraycopy靜態(tài)函數(shù)用于數(shù)組拷貝?? 數(shù)組是不能越界的
對象數(shù)組的復制實際上是復制的引用的拷貝? 也就是對象的地址?
*/
class Point
{
?int x;
?int y;
?Point(int x,int y)
?{
??this.x=x;
??this.y=y;
?}
}
class? Test
{
?public static void main(String []args)
?{
??/*int a[]=new int[]{1,2,3,4,5};
??int b[]=new int[5];
??System.arraycopy(a,0,b,0,a.length);?? //5個參數(shù)? 原數(shù)組 起始index? 數(shù)組2?? 起始index? 拷貝長度?
??for(int n=0;n<b.length;n++)
??{
???System.out.println(b[n]);
??}
??*/
??Point a[]=new Point[]{new Point(1,2),new Point(3,4),new Point(3,9)};
??Point b[]=new Point[3];
??System.arraycopy(a,0,b,0,3);? //拷貝的是對象的引用 修改拷貝一樣會修改原來數(shù)據(jù)?
??for(int n=0;n<a.length;n++)
??{
???System.out.println("x="+b[n].x+",y="+b[n].y);
??}
??
??//對拷貝進行修改會修改原來數(shù)據(jù)
??b[1].x=9;
??b[2].x=5;
??b[0].x=7;
???for(int n=0;n<a.length;n++)
??{
???System.out.println("x="+a[n].x+",y="+a[n].y);
??}
??
??
??
??
??
??
??
??
?}
?
?
?
?
?
}
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/yuedongwei/archive/2011/07/27/4145666.html
總結(jié)
以上是生活随笔為你收集整理的java 数组的拷贝 对象数组的拷贝 System.arraycopy函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面向对象写js
- 下一篇: 一场媲美“超女”海选的招聘狂潮