数组的拷贝

来源:互联网 发布:剑三帅气成女捏脸数据 编辑:程序博客网 时间:2024/05/01 21:40
数组的拷贝:      
 
       数组的长度一旦确定之后便不能调整,我们可以通过复制数组的内容变通实现改变数组长度。在System类中提供一个辅助的arraycopy方法提供复制数组内容的功能:

       public static void arraycopy(Object src,
                             int srcPos,
                             Object dest,
                             int destPos,
                             int length)

    参数1,需要被复制的目标数组
    参数2,从这个数组的那个一个位置开始复制
    参数3,需要把数据复制到的另外的那一个新的数组对象
    参数4,复制到新数组里面哪个位置(从这个位置开始算)
    参数5,复制的目标数组的长度

    如下所示代码,ArrayCopy.java,我们先定义数组a1,a2,给a1赋初值{1,2,3,4,5,6,7,8,9,10},而a2只定义不赋值

    package com.wusu.test01;      public class ArrayCopy      {   //显示数组函数          public static void show(int[] a)          {            for(int i=0;i<a.length;i++)            {               System.out.print(a[i]+"  ");            }            System.out.println();          }          //主函数          public static void main(String[] args)          {            int [] a1={1,2,3,4,5,6,7,8,9,10};            int [] a2=new int[10];            System.out.println("a1.length:"+a1.length+"  a2.length:"+a2.length);            show(a1);//复制前显示            show(a2);//复制前显示           System.arraycopy(a1,3,a2,1,6);//复制            System.out.println("a1.length:"+a1.length+"  a2.length:"+a2.length);            show(a1);//复制后显示            show(a2);//复制后显示          }      }  

即按照程序中的代码,将a1数组中的数字复制到a2数组中,复制总长度为6。

1 0
原创粉丝点击