java--数组的复制

4 篇文章 0 订阅
package day_6_2;

import java.util.Arrays;

/**
 * 
 * 用法一:Arrays.copOf(dataType[] Arrayname,int length)
 *其中Arrayname 代表的是要进行复制的数组(源数组),length代表的是复制后新数组的长度。
 *使用这个方法复制数组,默认的是从数组第一个元素开始复制。而length是目标数组的长度,
 *如果length大于srcArray数组的长度,那么目标数组会采用默认值进行填充。
 *如果length小于srcArray数组的长度,
 *那么复制的时候只复制到length个元素为止。
 *如果目标数组里面有数据,源数组里面的数据就会覆盖目标数组的数据。
 *用法二: system.arraycopy(原数组,原数组的起始下标,目标数组,目*标数组的起始下标,要复制的个数)
 */
public class bainli {
    public static void main(String[] args) {
        //数组的复制  system.arraycopy(原数组,原数组的起始下标,目标数组,目标数组的起始下标,要复制的个数)
        int[] a=new int[]{1,2,3,4,56,5,7,8,9};
        int[] b=new int[4];
        System.arraycopy(a, 1, b, 0, 4);
        System.out.println("数组的复制结果");
        for(int i=0;i<b.length;i++) {
            System.out.print(b[i]+"  ");
        }
        //数组的复制 使用java.util.Arrays类的copyOf方法实现数组的复制   --特点:生成的新数组是原数组的副本
        int[] c={1,2,3,4,5,6,7,8,9,90};
        int[] d=Arrays.copyOf(c, 10);//超出的补零
        int[] e=Arrays.copyOf(c, c.length+1);  //扩容


/************************************************/
        int[] arr = new int[] { 1, 2, 3, 4 ,5,6,7,8};
        byte[] arr1 = new byte[] { 125, 123 };
        int[] arr2=Arrays.copyOf(arr, 4);
        int[] arr3=Arrays.copyOf(arr, arr.length);
        int[] arr4=Arrays.copyOf(arr, arr.length+1);//扩容

        long StartTime=System.currentTimeMillis();
        for(int i=0;i<arr2.length;i++) {
            System.out.print(arr2[i]+" ");
        }
        System.out.println();
        for(int i=0;i<arr3.length;i++) {
            System.out.print(arr3[i]+" ");
        }
        System.out.println();
        for(int i=0;i<arr4.length;i++) {
            System.out.print(arr4[i]+" ");
        }
        long EndTime=System.currentTimeMillis();
        System.out.println("程序运行时间:"+(EndTime-StartTime));//所花费的毫秒数
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰河家园

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值