44-Java编程案例四:数组元素的复制

案例四:数组复制

  • 需求:

    • 把一个数组中的元素复制到另一个数组中去。
  • 分析:

    • 先静态初始化一个原数组
    • 再动态初始化一个新数组
    • 最后循环遍历出原数组的元素,依次赋值给新数组,完成数组复制
  • 实现:

  1. 静态初始化一个原数组,元素数据随意录入
  2. 动态初始化一个新数组,长度为原数组的长度
  3. 定义一个复制数组的方法copyArrs,设置两个形参:int[] arr1, int[] arr2 ——>用于接收原数组和新数组
  4. 在方法内,使用for循环遍历原数组,依次取出原数组元素数据,赋值给新数组
  5. 调用copyArrs方法,将原数组和新数组传递给形参:int[] arr1, int[] arr2,完成数组复制
  6. 定义一个打印数组的方法printArrs,设置一个形参:int[] arr ——>用于接收需要打印的数组
  7. 在方法内,使用for循环遍历传入的数组
     判断该元素是不是最后一个元素,是则不需要用逗号隔开,不是则需要用逗号隔开
  8. 调用printArrs方法,将传入的数组打印输出到控制台
package com.app.demo;

/**
    案例四:数组复制
         - 需求:
            - 把一个数组中的元素复制到另一个数组中去。
         - 分析:
             - 先静态初始化一个原数组
             - 再动态初始化一个新数组
             - 最后循环遍历出原数组的元素,依次赋值给新数组,完成数组复制
 */
public class Test4 {
    public static void main(String[] args) {
        // 1. 静态初始化一个原数组,元素数据随意录入
        int[] arrs = {12, 55, 77, 88};

        // 2. 动态初始化一个新数组,长度为原数组的长度
        int[] newArrs = new int[arrs.length];

        // 5. 调用copyArrs方法,将原数组和新数组传递给形参:int[] arr1, int[] arr2,完成数组复制
        copyArrs(arrs, newArrs);

        // 8. 调用printArrs方法,将传入的数组打印输出到控制台
        System.out.print("原数组: ");
        printArrs(arrs);

        System.out.print("\n新数组: ");
        printArrs(newArrs);
    }

    // 3. 定义一个复制数组的方法copyArrs,设置两个形参:int[] arr1, int[] arr2 ——>用于接收原数组和新数组
    public static void copyArrs(int[] arr1, int[] arr2) {
        // 4. 在方法内,使用for循环遍历原数组,依次取出原数组元素数据,赋值给新数组
        for (int i = 0; i < arr1.length; i++) {
            arr2[i] = arr1[i];
        }
    }

    // 6. 定义一个打印数组的方法printArrs,设置一个形参:int[] arr ——>用于接收需要打印的数组
    public static void printArrs(int[] arr) {
        // 7. 在方法内,使用for循环遍历传入的数组
        System.out.print("[");
        for (int i = 0; i < arr.length; i++) {
            // 判断该元素是不是最后一个元素,是则不需要用逗号隔开,不是则需要用逗号隔开
            System.out.print(i == arr.length - 1 ? arr[i] : arr[i] + ", ");
        }
        System.out.print("]");
    }
}
输出结果:

原数组: [12, 55, 77, 88]
新数组: [12, 55, 77, 88]

总结

1、数组的复制是什么意思?

  • 需要创建一个新数组,将原数组的元素赋值给新数组
  • 注意:不要直接将原数组赋值给新数组,因为这样只能得到同一个内存地址,在内存中仍然是只有一个数组,而不会复制拷贝一个新数组
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值