Java数组复制克隆方法实现详解

  

这篇文章主要介绍了Java数组复制克隆方法实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

  

<强>一、源码

        公开课Test1 {   公共静态void main (String [] args) {//学生新学生[][]arr={新学生(){id=" 22 "}};c#可以简写法,Java不支持   学生[]arr=新学生[1];   学生圣=new ();   st.id=12;   st.name=" qwe”;   加勒比海盗[0]=圣;   学生[]arrss=arrs.clone ();   system . out。println (arr==arrss);   System.out.println (arrs.equals (arrss));   arrss [0]。id=56;   for (int i=0;我& lt;arrs.length;我+ +){   System.out.println (arr[我]。id + arr[我]. name);   }   for (int i=0;我& lt;arrss.length;我+ +){   System.out.println (arrss[我]。id + arrss[我]. name);   }   System.out.println(“- - - - - - - - - - - - -自定义对象类型数组克隆- - - - - - - - - - - - -”);      学生[]arrst1=新学生[1];   学生相约=new ();   相约。id=162;   st1.name=" qkkj”;   arrst1[0]=相约;   学生[]arrst2=arrst1;   system . out。println (arrst1==arrst2);   System.out.println (arrst1.equals (arrst2));   arrst2 [0]。id=996;   for (int i=0;我& lt;arrst1.length;我+ +){   System.out.println (arrst1[我]。id + arrst1[我]. name);   }   for (int i=0;我& lt;arrst2.length;我+ +){   System.out.println (arrst2[我]。id + arrst2[我]. name);   }   system . out。println(“- - - - - - - - - - - - -自定义对象类型数组=赋值- - - - - - - - - - - - -”);      var arr1=new String[]{“我们”,“dfeffg”};   var arr=arr1.clone ();   system . out。println (arr arr1==);   System.out.println (arr1.equals (arr));   arr [1]=癲dddddddddddddd”;   for (int i=0;我& lt;arr.length;我+ +){   System.out.println (arr[我]);   }   for (int i=0;我& lt;arr1.length;我+ +){   System.out.println (arr1[我]);   }   System.out.println(“- - - - - - - - - - - -字符串数组克隆- - - - - - - - - - - - - - - -”);      var arr11=new String[]{“我们”,“dfeffg”};   var arr111=arr11;   system . out。println (arr111==arr11);   System.out.println (arr111.equals (arr11));   arr111 [1]=" ddddddddddddddd”;   for (int i=0;我& lt;arr11.length;我+ +){   System.out.println (arr11[我]);   }   for (int i=0;我& lt;arr111.length;我+ +){   System.out.println (arr111[我]);   }   System.out.println(“- - - - - - - - - - - -字符串数组=赋值- - - - - - - - - - - - - - - -”);      var arr2=new int[]{232年45};   var arr3=arr2.clone ();   system . out。println (arr2==arr3);   System.out.println (arr2.equals (arr3));   arr3 [1]=4444;   for (int i=0;我& lt;arr2.length;我+ +){   System.out.println (arr2[我]);   }   for (int i=0;我& lt;arr3.length;我+ +){   System.out.println (arr3[我]);   }   System.out.println(“- - - - - - - - - - - -数字类型数组克隆- - - - - - - - - - - - - - - -”);      var arr4=new int [] {23432、44455};   var arr5=arr4;   system . out。println (arr4==arr5);   System.out.println (arr4.equals (arr5));   arr4 [1]=6666;   for (int i=0;我& lt;arr4.length;我+ +){   System.out.println (arr4[我]);   }   for (int i=0;我& lt;arr5.length;我+ +){   System.out.println (arr5[我]);   }   System.out.println(“- - - - - - - - - - - -数字类型数组=赋值- - - - - - - - - - - - - - - - - -”);   }   }      类学生{   公共int id;   公共字符串名称;   }      

<强>二、运行结果

        假   假   56 qwe   56 qwe   - - - - - - - - - - - - -自定义对象类型数组克隆- - - - - - - - - - - - -   真正的   真正的   996年qkkj   996年qkkj   - - - - - - - - - - - - -自定义对象类型数组=赋值- - - - - - - - - - - - -   假   假   我们   ddddddddddddddd   我们   dfeffg   - - - - - - - - - - - -字符串数组克隆- - - - - - - - - - - - - - - -   真正的   真正的   我们   ddddddddddddddd   我们   ddddddddddddddd   - - - - - - - - - - - -字符串数组=赋值- - - - - - - - - - - - - - -   假   假   45   4444   - - - - - - - - - - - -数字类型数组克隆- - - - - - - - - - - - - - - -   真正的   真正的   6666   6666   - - - - - - - - - - - -数字类型数组=赋值- - - - - - - - - - - - - - - - - -      

Java数组复制克隆方法实现详解