如何在java中对数组进行复制

  介绍

本篇文章为大家展示了如何在java中对数组进行复制,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

<强> 1,系统。arraycopy的用法:

public  static  void  arraycopy (Object  src,,   ,,,,,,,,,,,,,,int  srcPos,,   ,,,,,,,,,,,,,,Object ,不在座位上,   ,,,,,,,,,,,,,,int  destPos,,   ,,,,,,,,,,,,,,int 长度)

参数:

src -源数组。
srcPos -源数组中的起始位置。
dest -目标数组。
destPos -目标数据中的起始位置。
-长度要复制的数组元素的数量

应用实例:

public  class 主要{,   public 才能;static  void  main (String [], args), {,   ,   ,,,,int [], a1={1, 2, 3, 4, 5, 6},,   ,,,,int [], a2={11、12、13、14、15、16},,   ,,,,,   ,,,,System.arraycopy (a1,, 2,, a2,, 3,, 2),,   ,,,,System.out.print(“复制后结果:“),,   ,,,,,(int 我=0;i

运行结果:

如何在java中对数组进行复制

<强> 2,克隆的用法:

java . lang . object类的克隆()方法为受保护的类型,不可直接调用,需要先对要克隆的类进行下列操作:

首先被克隆的类实现可克隆接口,然后在该类中覆盖克隆()方法,并且在该克隆()方法中调用super.clone();这样,super.clone()便可以调用java . lang . object类的克隆()方法。

应用实例:

//被克隆的类要实现可克隆接口,   class  Cat  implements  Cloneable ,   {   private  String 名称;   private  int 年龄;   public 猫(String 名称、int 年龄),   {才能   this.name=名称;   this.age=年龄;   }//重写克隆()方法,   protected  Object 克隆()throws  CloneNotSupportedException {   return  super.clone (),;   }   }   public  class  Clone  {   public  static  void  main (String [], args), throws  CloneNotSupportedException  {   Cat  cat1=new 猫(“xiaohua", 3);   System.out.println (cat1);//调用克隆方法,   Cat  cat2=(Cat) cat1.clone ();   System.out.println (cat2);   }   }

<强> 3,复制引用和复制对象的区别

复制引用:是指将某个对象的地址复制,所以复制后的对象副本的地址和源对象相同,这样,当改变副本的某个值后,源对象值也被改变;

复制对象:是将源对象整个复制,对象副本和源对象的地址并不相同,当改变副本的某个值后,源对象值不会改变;

Cat  cat1=new 猫(“xiaohua", 3);//源对象,   ,,,System.out.println(“源对象地址“+ cat1),,   ,,,//调用克隆方法,复制对象,   ,,,Cat  cat2=(Cat) cat1.clone (),,   ,,,Cat  cat3=(Cat) cat1;//复制引用,   ,,,System.out.println(“复制对象地址:“+ cat2),,   ,,,System.out.println(“复制引用地址:“+ cat3);

输出结果:

如何在java中对数组进行复制

可以看的出,复制引用的对象和源对象地址相同,复制对象和源对象地址不同

<强> 4,数组。copyOf的用法:

Arrays.copyOf有十种重载方法,复制指定的数组,返回原数组的副本。上述内容就是如何在java中对数组进行复制,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。

如何在java中对数组进行复制