首页 > 其他分享 > 数组的拷贝与扩容

数组的拷贝与扩容

时间:2023-10-24 19:01:39浏览次数:26  
标签:扩容 index int ++ newArray 数组 拷贝

数组的拷贝与扩容

拷贝

  1. 首先需要两个数组

  2. 需要知道从哪里拷贝到哪里,拷贝多长

    //需求:从源数组里面拷贝第二个数组-第五个数组,到目标数组里面
    public class ArrayCopyDemo {
        public static void main(String[] args) {
            //源数组
            int[] ages = {14, 25, 36, 12, 13, 45, 46};
            //源数组开始拷贝的位置
            int srcPos = 2;
            //拷贝数组的长度
            int index = 4;
            //目标数组
            int[] newAges = new int[index];
            //目标数组开始拷贝的位置
            int destPos = 0;
            //拷贝数组
            for (int i = srcPos; i < srcPos + index; i++) {
                newAges[destPos++] = ages[i];
            //    destPos++;
            }
            //遍历输出目标数组
            for (int newAge : newAges) {
                System.out.println(newAge);
            }
    
        }
    }
    

扩容

单元素扩容

//需求:在源数组里面在扩容3个元素,到目标数组里面
public class ArrayExpansionDemo {
    public static void main(String[] args) {
        //源数组
        int[] array = {14, 12 ,15 ,13 ,16};
        //扩容后的长度
        int index = 6;
        //目标数组
        int[] newArray = new int[index];
        //目标数组当前位置
        int destPos = 0;
        //拷贝源数组
        for (int i = 0; i < array.length; i++) {
            newArray[destPos++] = array[i];
        }
        //扩容
        newArray[index - 1 ] = 25;
        newArray[index - 2 ] = 24;
        newArray[index - 3 ] = 28;

        for (int i : newArray) {
            System.out.println(i);
        }
    }
}

多元素扩容

//需求:在源数组里面在扩容3个元素,到目标数组里面
public class ArrayExpansionDemo {
    public static void main(String[] args) {
        //源数组1
        int[] array1 = {1 , 2, 3, 4, 5, 6};
        //源数组2
        int[] array2 = {7, 8, 9};
        //源数组2的拷贝位置
        int srcPos = array1.length;
        //目标数组长度
        int index = 9;
        //目标数组
        int[] newArray = new int[index];
        //目标数组开始拷贝的位置
        int destPos = 0;
        //拷贝源数组1
        for (int i = 0; i < array1.length; i++) {
            newArray[destPos++] = array1[i];
        }
        //拷贝源数组2
        for (int i = 0; i < array2.length; i++) {
            newArray[srcPos++] = array2[i];
        }
        //遍历输出目标数组
        for (int i : newArray) {
            System.out.println(i);
        }
    }
}

标签:扩容,index,int,++,newArray,数组,拷贝
From: https://blog.51cto.com/u_16079786/8009276

相关文章

  • C++前缀和算法应用:和至少为 K 的最短子数组的原理、源码及测试用例
    题目给你一个整数数组nums和一个整数k,找出nums中和至少为k的最短非空子数组,并返回该子数组的长度。如果不存在这样的子数组,返回-1。子数组是数组中连续的一部分。示例1:输入:nums=[1],k=1输出:1示例2:输入:nums=[1,2],k=4输出:-1示例3:输入:nums=......
  • C++算法前缀和的应用:分割数组的最大值的原理、源码及测试用例
    分割数组的最大值二分过些天整理基础知识题目给定一个非负整数数组nums和一个整数m,你需要将这个数组分成m个非空的连续子数组。设计一个算法使得这m个子数组各自和的最大值最小。示例1:输入:nums=[7,2,5,10,8],m=2输出:18解释:一共有四种方法将nums分割为2个......
  • centos7磁盘动态扩容
    1.查看磁盘空间df-h  2.fdisk-l  查看当前的磁盘分区信息(主要是分区表信息) linux新增磁盘后,用fdisk等命令查询不到#ls/sys/class/scsi_host/(会看到有host0、host1...hostN,对每个host进行如下操作) echo"---">/sys/class/scsi_host/host0/scanecho"--......
  • C99中的柔性数组和其内在本质
    示例:#include<stdio.h>#include<stdlib.h>//定义一个包含柔性数组的结构体structflex_array{ intsize; intdata[0];};intmain(){ inti; intsize=10; //动态分配内存 structflex_array*arr=malloc(sizeof(structflex_array)+sizeof(int)*si......
  • 深入理解深浅拷贝
    深入理解深、浅拷贝(Java)​ 以下是个人理解,如有不足,请进行指正和补充,感谢您的阅读。​ 【参考】https://cloud.tencent.com/developer/article/2158401?areaId=106001一、什么是拷贝?​ 拷贝(中文对copy的音译),意思是复制。复制的话,大家应该都很清楚,这里就不作详细解释,意思就是生......
  • k8s 扩容指定版本机器 kubeadm
    一、新增机器二、同步/etc/hosts文件三、关闭新机器防火墙systemctlstopfirewalldsystemctldisablefirewalld四、新机器增加repo文件catkubernetes.repo[kubernetes]name=KubernetesRepobaseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-e......
  • 给定文件列表,按目录结构拷贝到新目录中
      #!/bin/bash#mycopyTree.sh文件内容如下functionprint_usage(){echo"Usage:${1}<src_list_file><dest_dir>"}functionmycopy_tree(){#输入源文件列表目录src_list_file=${1}#输入目标目录dest_dir=${2}#遍历源文件......
  • JavaScript 将对象转换为数组
    JavaScript将对象转换为数组在JavaScript中,你可以使用不同的方法将对象转换为数组,具体取决于对象的结构和你希望在数组中得到什么样的数据。以下是一些常见的方法:Object.keys()方法:这种方法将对象的键转换为数组。constobj={a:1,b:2,c:3};constarr=Object......
  • JS根据属性删除数组中的对象
    JS根据属性删除数组中的对象//示例letarry=[{id:1,name:'xxx'},{id:2,name:'yyy'}]​arry=arry.filter(item=>item.id!==1)​//这里根据数组内对象的id属性进行过滤,把id为1的对象过滤掉了,并返回了过滤得到的数组 ......
  • 3.4 数组和特殊矩阵
    3.4.1数组的定义知识总览     知识总结    未完待续......