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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java gb2312中文乱码_Java中文乱码问题(转)

    java gb2312中文乱码_Java中文乱码问题(转)大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考。首先了解一下Java中文问题的由来:Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问题。…

    2022年7月16日
    25
  • 上海市高校计算机考试准考证

    上海市高校计算机考试准考证大家好啊,距离22考研初试仅剩26天,现在这个时候,大家除了对知识点进行查缺补漏之外,也得关注一些关于考前的准备工作,还有考场的注意事项哦!因为地区的不同,考点的不同,监考老师的不同,考试的要求和规定也会有差异哦,所以大家在拿到准考证之后,一定要仔细查看考试考点的要求~#考研倒计时#打开腾讯新闻,查看更多图片>1、可不可以戴手表、手环?如果要戴手表,那必须是没有记忆及计算功能的,也就是机械表,手环算电子产品大概率是不可以带的,在进考场之前可以询问一下监考老师,确认一下是否可以带

    2022年5月7日
    66
  • SQL | 窗口函数 row number + partition by 排序

    SQL | 窗口函数 row number + partition by 排序目录1  背景2  SQL牛逼函数走起来2.1  Step12.2  SQL实现12.3  Step22.4  SQL实现22.5  补充-collect函数2.5.1  SQL语句3  头条面试SQL题3.1&nbs…

    2022年5月29日
    47
  • iOS 邮箱正则表达式「建议收藏」

    iOS 邮箱正则表达式「建议收藏」邮箱正则表达式

    2022年6月24日
    56
  • cdn必须备案吗_没备案域名cdn加速

    cdn必须备案吗_没备案域名cdn加速随着互联网行业的快速发展,人们可以通过网络知道很多事情,上网早已成为了一件很普通的事情。近年来,随着网络技术的发达,也出现了不少智能虚拟网络,比如CDN加速服务,它可以让用户能够更好的获取内容。那么,CDN加速是如何使用的?需要备案吗?下面就让摩杜云来跟大家详细的介绍一下。CDN加速是如何使用的?要知道,CDN加速服务是要收费的,大家在注册域名的时候可以在摩杜云官网上找到这项服务,可以免费试用。而CDN加速的使用方法也是很简单的,现在市面上的各大域名服务商都为用户体用了CDN加速服务,在域名服务商找到C

    2025年8月26日
    8
  • SIGINT信号

    SIGINT信号原文链接 http hi baidu com l1l1888 blog item 9024a2fe75c6 html 用户按下 ctrl c 时 进程被中断 catch 被执行 中断处理函数处理完毕 root localhost001 catsigint demo cpp include include includeusing st

    2025年7月15日
    5

发表回复

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

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