package com.Summer_0424.cn;

import java.util.Arrays;
import java.util.concurrent.CopyOnWriteArrayList; /**
* @author Summer
* 数组复制的五种方式(遍历循环一一赋值、System.arraycopy、地址赋值、克隆clone()、Array.copyof())
*/
public class Test06 { public static void main(String[] args) {
//复制数组,首先声明一个数组
int [] arr = {1,2,3,4,5};
//方式一:一一遍历后依次赋值
int [] arr1 = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
arr1[i] = arr[i];
}
System.out.println(Arrays.toString(arr1)); //方法二
//前提 :必须要创建目标数组
//格式:源数组,源数组的起始位置,目标数组,目标数组的起始位置
int [] arr2 = new int[arr.length];
System.arraycopy(arr, 0, arr2, 0, 5);//源码中native代表调用了底层源码
System.out.println(Arrays.toString(arr2)); //方法三 地址赋值
int [] arr3 = arr;
System.out.println(arr);//输出地址
System.out.println(arr3);//比较地址
System.out.println(Arrays.toString(arr3)); //方式四 克隆
int [] arr4 = arr.clone();
System.out.println(arr);//输出地址
System.out.println(arr4);//比较地址
System.out.println(Arrays.toString(arr4)); //方法五 copyof
int [] arr5 = Arrays.copyOf(arr, 5);
System.out.println(Arrays.toString(arr5));
} }

数组复制的五种方式(遍历循环一一赋值、System.arraycopy、地址赋值、克隆clone()、Arrays.copyof())的更多相关文章

  1. java中数组复制的两种方式

    在java中数组复制有两种方式: 一:System.arraycopy(原数组,开始copy的下标,存放copy内容的数组,开始存放的下标,需要copy的长度); 这个方法需要先创建一个空的存放cop ...

  2. Java中数组复制的几种方式以及数组合并

    1.Object.clone() 简单直接,只能对源数组完整地复制 2.Arrays.copyOf(T[] original, int newLength) 可以只复制源数组中部分元素,但复制的起始位 ...

  3. Java Map集合 遍历 五种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.HashMap; import java.util.Iterator; import ...

  4. Java数组拷贝的五种方法

    在Java中有多种方法可以拷贝一个数组,到另外一个数组. 1.循环拷贝 在循环拷贝方法中,只需要利用i,移动指针即可复制所有数组到arrayB中. for(int i=0;i<arrayA.le ...

  5. Android数据存储五种方式总结

    本文介绍Android平台进行数据存储的五大方式,分别如下: 1 使用SharedPreferences存储数据     2 文件存储数据       3 SQLite数据库存储数据 4 使用Cont ...

  6. 五种方式让你在java中读取properties文件内容不再是难题

    一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...

  7. Mysql查看版本号的五种方式介绍

    Mysql查看版本号的五种方式介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-05-03   一.使用命令行模式进入mysql会看到最开始的提示符;二.命令行中使用status可以看到 ...

  8. spring- properties 读取的五种方式

    转至:http://www.cnblogs.com/hafiz/p/5876243.html 方式1.通过context:property-placeholder加载配置文件jdbc.properti ...

  9. Spring事务配置的五种方式 巨全!不看后悔,一看必懂!

    前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. ...

随机推荐

  1. 如何去除vue项目中的 # --- History模式

    来自:https://www.cnblogs.com/zhuzhenwei918/p/6892066.html 侵删 使用vue-cli搭建的环境,在配置好路由之后,可以看到下面的情况: 但是不难发现 ...

  2. JavaScript Array常用属性和方法

    Array的length属性可以通过赋值改变,但这样会导致Array原有的大小发生改变. var a = ["I", "Love", "You&quo ...

  3. Django---ORM中的锁和事务

    ---恢复内容开始--- 一 锁 行级锁 select_for_update(nowait=False,skip_locked=False)  #注意必须用在事务里面,至于如何开启事务,往后看 返回一 ...

  4. 兼容性问题:backgroud-size支持IE8浏览器的方法

    在工作中碰到一个问题:background-size是css3的新属性,当在IE8及其以下浏览器中不起作用,导致背景图片不能自适应元素的大小? 先看一个小demo: <!DOCTYPE html ...

  5. Python 实例方法、类方法、静态方法的区别与作用

    Python中至少有三种比较常见的方法类型,即实例方法,类方法.静态方法.它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?且看下文. 首先,这三种方法都定义在类中.下面我先简单说一下怎么定义 ...

  6. Docker EE 安装 on centos7

    本文演示如何在CentOS7上安装Docker EE. 1 安装方式 有两种方法可以 在Centos上安装和升级Docker企业版(Docker EE): YUM存储库:设置Docker存储库并从中安 ...

  7. 使用VSTS的Git进行版本控制(一)——复制现有仓库

    使用VSTS的Git进行版本控制(一)--复制现有仓库 概述 Team Services支持两种类型的版本控制Git和Team Foundation Version Control (TFVC).以下 ...

  8. sqlserver——cube:多维数据集

    1.cube:生成多维数据集,包含各维度可能组合的交叉表格,使用with 关键字连接 with cube 根据需要使用union all 拼接 判断 某一列的null值来自源数据还是 cube 使用G ...

  9. python第一百零七天-- Django 基础 2

    1.Django请求的生命周期 路由系统 -> 试图函数(获取模板+数据=>渲染) -> 字符串返回给用户 2.路由系统 /index/ -> 函数或类.as_view() / ...

  10. 初识kafka

    简介     Kafka经常用于实时流数据架构,用于提供实时分析.本篇将会简单介绍kafka以及它为什么能够广泛应用. kafka的增长是爆炸性的.2017年超过三分之一的世界五百强公司在使用kafk ...