java数组的复制分为数组地址的复制和值的复制

地址的复制:

int []arrA={11,22,33,44};
//创建一个数组
int [] arrB=new int[5];
System.out.println("拷贝地址(引用)之前");
System.out.println("arrA="+arrA);
System.out.println("arrB="+arrB); //引用的拷贝
arrB=arrA;
System.out.println("拷贝地址(引用)之后 ");
System.out.println("arrA="+arrA);
System.out.println("arrB="+arrB);

值的复制:

int [] arrA={11,22,33,44};
int [] arrB=new int[5];
//复制
/*arrB[0]=arrA[0];
arrB[1]=arrA[1];
arrB[2]=arrA[2];
arrB[3]=arrA[3];*/
System.out.println("赋值之前");
for(int i=0;i<arrB.length;i++){
System.out.print(arrB[i]+"\t");
}
//两个数组的长度的最小值
int length=Math.min(arrA.length, arrB.length);
for(int i=0;i<length;i++){
arrB[i]=arrA[i];
}
//遍历arrB数组
System.out.println("\n赋值之后");
for(int i=0;i<arrB.length;i++){
System.out.print(arrB[i]+"\t");
}

System类中的 arraycopy(…)方法 

        int [] arrA={11,22,33,44};//源数组
int [] arrB=new int[5];//目标数组 System.out.println("数组拷贝之前");
for(int num:arrB){
System.out.print(num+"\t");
}
//拷贝
System.arraycopy(arrA, 0, arrB, 1, 2);  //从arrA从下标0开始拷贝,拷贝给arrB从下标1开始,拷贝的长度为2 arrB的元素为[0,11,22,0,0] System.out.println("\n数组拷贝之后");
for(int num:arrB){
System.out.print(num+"\t");
}

java 数组的复制的更多相关文章

  1. Java数组的复制

    初学Java的时候,需要复制数组的时候,一下子就想到使用赋值语句“=”,例如:array1 = array2:但后来慢慢发现,这个语句并不能将array2的内容复制给array1,而是将array2的 ...

  2. Java数组的复制全解

    1.将一个基本数据类型数组的引用赋值给另一个数组 public class Array_copy { int[] array1=new int[]{1,2,3,4,5,6}; int[] array2 ...

  3. Java数组的复制Arrays.copyOf()、System.arraycopy()、nums.clone()

    public static native void arraycopy(Object src, int srcPos, Object dest, int destPos, int length); a ...

  4. java数组复制的方式和效率比较

    java中,数组的复制有以下三种方式: 1. 调用System.arraycopy(Arrays.copyOfRange可以当作第四种,但是底层调用的是System.arraycopy,所以,认为是同 ...

  5. Java开发之Java对数组的复制

    苏格拉底曾说过,“世界上最快乐的事,莫过于为理想而奋斗.”人生短短数十年,何不为梦想而奋斗一把?其实只要主动追求,梦想并不遥远.总有一天,你会把它攥在手里. 作为写的第一篇Java文章,展望一下开始下 ...

  6. JAVA二维数组的复制

    JAVA二维数组的复制 笔者今天做一道ccf题目时,遇到要将二维数组拷贝复制时,没有用常规的那种一个一个数的复制,用的是System.arraycopy()来进行复制,下面介绍这个函数的一些注意点: ...

  7. java 数组复制

    http://www.cnblogs.com/zhengbin/p/5671403.html http://www.cnblogs.com/jjdcxy/p/5870524.html Java数组拷贝 ...

  8. java数组元素的复制

    package day03; import java.util.Arrays; /** * * 数组元素的复制: int的默认值是0,boolean默认值是flase 数组的扩容和缩容(本质的实现数组 ...

  9. java中数组的复制

    数组复制使我们在编程过程中经常要使用到的,在java中数组复制我们大概能够分为两种,一种是引用复制,还有一种就是深度复制(复制后两个数组互不相干). 以下我们就通过測试的方法来具体看看什么是引用复制和 ...

随机推荐

  1. Django2.0——实现简易登陆、注册

    思路: 实现简易的登陆.注册,我们至少需要三个HTML页面,一个主页面.一个登陆界面.一个注册界面.为了存储和校验用户的账号和密码,我们需要写一个模型类(用于映射到数据库).两个form类(一个登陆. ...

  2. 洛谷 P1341 无序字母对(欧拉回路)

    题目传送门 解题思路: 一道欧拉回路的模板题,详细定理见大佬博客,任意门 AC代码: #include<cstdio> #include<iostream> using nam ...

  3. js实现placehoider效果

    placeholder作为input输入框提示语很好用,但是低版本ie却不支持,对于只有提示语的输入框并不适用 <input type="text" value=" ...

  4. The flower(寻找出现m次以上,长度为k的子串)

    链接:https://ac.nowcoder.com/acm/contest/3665/B来源:牛客网 题目描述 Every problem maker has a flower in their h ...

  5. vzray上网教程

    1.首先按照之前的教程在chrome里安装插件-Proxy-SwitchyOmega-Chromium-2.5.15 2.打开  vzray-v3.11-windows-64,打开 3.在chrome ...

  6. 201604-2 俄罗斯方块 Java

    大家谁能帮我看看是哪里不对,提交到系统中是0分,在Eclipse中可以得出例子中的结果 思路: 题目中有两个关键点:如何模拟下落的过程,如何判断方块下落在哪里停止. 在数据的存储上,需要保存整个&qu ...

  7. 吴裕雄--天生自然Linux操作系统:Linux 用户和用户组管理

    Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统. 用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...

  8. oracle误删scott文件如何恢复

    找到oracle的路径,一般是 某盘:\app\用户名\product\11.2.0\dbhome_1\RDBMS\ADMIN\scott.sql 这样找到scott.sql ,其中有恢复所有内容的S ...

  9. JavaSE--数字签名之校验签名

    参考:http://blog.csdn.net/dotuian/article/details/51722300 关于keystore的简单介绍 Keytool是一个Java数据证书的管理工具 ,Ke ...

  10. 14 微服务电商【黑马乐优商城】:day03-springcloud(Hystix,Feign)

    本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一) ...