java数组拼接

java数组拼接JAVA数组拼接(扩容)int[]A=newint[]{1,3,5,7,9};int[]B=newint[]{2,4,6,8,10};arrayJoin(A,B);}publicstaticvoidarrayJoin(int[]a,int[]b){int[]arr=newint[a.l…

大家好,又见面了,我是你们的朋友全栈君。

JAVA数组拼接(扩容)

        int[] A=new int[]{ 
   1,3,5,7,9};
        int[] B=new int[]{ 
   2,4,6,8,10};
        arrayJoin(A,B);
    }
    public static void arrayJoin(int[] a,int[] b){ 
   
        int[] arr=new int[a.length+b.length];//开辟新数组长度为两数组之和
        for(int i=0;i<a.length;i++){ 
   //拷贝a数组到目标数组arr
             arr[i]=a[i];
        }
        for(int j=0;j<b.length;j++){ 
   //拷贝b数组到目标数组arr
            arr[a.length+j]=b[j];
        }
        for(int i=0;i<arr.length;i++){ 
   //输出目标数组
            System.out.print(arr[i]+" ");
        }
    }
}

java数组拼接

实际在java中可用java.util.Arrays.copyOf(源数组名称,新数组长度)命令直接实现数组扩容。

public class Day12_2{ 
   
    public static void main(String[] args){ 
   
        int[] A=new int[]{ 
   1,3,5,7,9};
        int[] B=new int[]{ 
   2,4,6,8,10};
        int[] result=java.util.Arrays.copyOf(A,10);
        //使result数组长度为10,并将A数组拷贝至新数组,此时result数组与原数组不是同一块内存,原来的内存还是5个元素,result的是扩容后的空间
        for(int x=0;x<B.length;x++){ 
   
            result[A.length+x]=B[x];
        }
        for(int i:result){ 
   
            System.out.print(i+" ");
        }
        System.out.print("");//换行
    }
}

java数组拼接

public class Day12_2{ 
   
    public static void main(String[] args){ 
   
        int[] A=new int[]{ 
   1,3,5,7,9};
        int[] B=new int[]{ 
   2,4,6,8,10};
        int[] result=java.util.Arrays.copyOf(A,10);//动态扩容,数值为java int默认值0
        // for(int x=0;x<B.length;x++){ 
   
        // result[A.length+x]=B[x];
        // }
        for(int i:result){ 
   
            System.out.print(i+" ");
        }
        System.out.print("");
    }
}

java数组拼接

上述讲到的是java中数组拷贝的模拟实现和自行实现语句,那么既然有数组完整拷贝肯定也就有数组部分拷贝。所以数组部分拷贝的语句是

System.arraycopy(源数组名称,源数组开始点,目标数组名称,目标数组开始点,拷贝长度)

但一定要注意的是目标数组拷贝位置确定后是连续拷贝的。

public class Day12_2{ 
   
    public static void main(String[] args){ 
   
        int[] A=new int[]{ 
   1,2,3,4,5,6,7,8};
        int[] B=new int[]{ 
   22,102,45,34,67,89,122};
        System.arraycopy(B,2,A,4,3);//源数组为B(将数组B部分元素拷贝至A数组),拷贝起始点下标为2,即从45开始拷贝;A数组拷贝开始点为下标为4,即从5开始更改数组内容,拷贝长度为3
        for(int i:A){ 
   //用foreach语句输出数组A
            System.out.print(i+" ");
        }
        System.out.print("");
    }
}

java数组拼接

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130944.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • clion 激活码【2021.7最新】

    (clion 激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月21日
    35
  • DataGrid中DropDownList的动态绑定和触发DropDownList事件[通俗易懂]

    DataGrid中DropDownList的动态绑定和触发DropDownList事件[通俗易懂]我在写DataGrid控件中子控件事件时候,DropDownList的事件相比而言麻烦一点,在此,我简单罗列如下(我在此处为了方便这里都用DataGrid中的隐藏列存储我所要的数据):一、DropDownList的动态绑定,只需在DataGrid1_ItemDataBound的事件中,取出数值进行匹配,便可以了,具体代码如下:二、触发DataGrid中DropDownList的事件前台

    2022年9月12日
    0
  • Pycharm 最新激活码 2021[免费获取]

    (Pycharm 最新激活码 2021)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsaWNlbnNlSWQi…

    2022年3月21日
    51
  • KEIL_MDK生成Bin文件「建议收藏」

    KEIL_MDK生成Bin文件「建议收藏」1、MDK配置MDK是使用安装目录下的(formelf.exe)工具来生成bin文件,配置方法:勾选”Run#1″,在后面输入框写入bin文件生成方式2、绝对路径”D:\ProgramFiles\MDK516\ARM\ARMCC\bin\fromelf.exe”–bin-o./obj/test_app.bin./obj/test_app.axf”…

    2022年10月20日
    0
  • 通透,23 个问题 TCP 疑难杂症全解析

    通透,23 个问题 TCP 疑难杂症全解析

    2020年11月20日
    161
  • MANIFEST.MF文件(PDB文件)

    打开Java的JAR文件我们经常可以看到文件中包含着一个META-INF目录, 这个目录下会有一些文件,其中必有一个MANIFEST.MF,这个文件描述了该Jar文件的很多信息,下面将详细介绍MANIFEST.MF文件的内 容,先来看struts.jar中包含的MANIFEST.MF文件内容:Manifest-Version:1.0Created-By:ApacheAnt 1.5.1…

    2022年4月15日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号