java arraycopyof_Java中System.arraycopy()和Arrays.copyOf()的区别
System.arraycopy()
这是一个由java标准库提供的方法。用它进行复制数组比用for循环要快的多。
arraycopy()需要的参数有:源数组,从源数组中的什么位置开始复制的偏移量,目标数组,从目标数组中的什么位置开始复制的偏移量,需要复制的元素个数
查看源码,它调用的是本地方法,应该是用c语言封装好的
Arrays.copyOf
在复制数组时会返回一个新数组
copyOf()需要有的参数:源数组,需要复制的元素个数
查看源码:
public static int[] copyOf(int[] original, int newLength) {
int[] copy = new int[newLength];
System.arraycopy(original, 0, copy, 0,
Math.min(original.length, newLength));
return copy;
}
其仍调用的是System.arraycopy()这个方法,并且返回一个新数组
附测试Demo:
public class CopyDemo {
public static void main(String[] args) {
int[] a = new int[] {1, 2, 3, 4, 5, 6, 7};
int[] b = new int[5];
System.arraycopy(a, 0, b, 0, 5);
System.out.println(Arrays.toString(b));
int[] c = {1, 2, 3, 4, 5};
int[] d = Arrays.copyOf(c, 5);
System.out.println(Arrays.toString(d));
}
}
java arraycopyof_Java中System.arraycopy()和Arrays.copyOf()的区别相关推荐
- System.arraycopy()和 Arrays.copyOf()的区别联系(源码深度解析copyOf扩容原理)
1.System.arraycopy()方法 public static void arraycopy(Object src, int srcPos, Object dest, int destPos ...
- System.arraycopy和Arrays.copyOf的原理解剖
数组的复制其实在很多业务情况下会用到,不同的业务情况下选择适合的方式来实施复制是每个开发人员要考虑的事情. 那么System.arraycopy.Arrays.copyOf到底是如何复制的呢?接下来就 ...
- 数组复制速度 System.arraycopy()clone() Arrays.copyof() for()探究
先申明复制速度结果 System.arraycopy() clone() Arrays.copyof() for() 背后原理探究 首先要申明的是这4种方法中的前3种是没有本质区别的,对象都是浅复制( ...
- System.arraycopy 和Arrays.copyOf
1.Arrays.copyOf()的实现是用的是System.arrayCopy(); 2.System.arrayCopy()需要目标数组,对两个数组的内容进行可能不完全的合并操作. 3.Array ...
- 再谈System.arraycopy和Arrays.copyOf
之前转载过一篇博文,介绍过这两个方法,今天想要再次详细的了解一下. public static native void arraycopy(Object src, int srcPos,Object ...
- System.arraycopy和Arrays.copyOf的关系
参考连接: https://www.cnblogs.com/happyxiaoyu/p/5786971.html https://blog.csdn.net/expect521/article/det ...
- java中arraycopy的用法_[jdk源码阅读系列]Java中System.arraycopy()的用法
本文转载,原文链接: 3分钟了解Java中System.arraycopy的用法 - 伊万夫斯基 - 博客园 https://www.cnblogs.com/benjieqiang/p/114288 ...
- java arraycopy 并发_java中System.arraycopy是线程安全的吗?
System.arraycopy 是一个 native 方法: public static native void arraycopy(Object src, int srcPos, Object d ...
- java的arraycopy_java System.arrayCopy使用说明
java System.arrayCopy使用说明 java.lang.System.arraycopy() 方法复制指定的源数组的数组,在指定的位置开始,到目标数组的指定位置. 下面是 System ...
最新文章
- 软件性能测试pdf,软件性能测试解析与优化.pdf
- 面向对象精要-理解对象
- ASP.NET页面的结构
- 稳定性测试怎么测_心理测试:选择你喜爱的一种食物,测你2020年的运势怎么样...
- 【Flink】RuntimeException: Row arity of from does not match serializers
- opencv-python 学习笔记2:实现目光跟随(又叫人脸跟随)
- UVA11991 Easy Problem from Rujia Liu?题解
- 2018年值得推荐的20个Bootstrap网站模板
- 如何使用TCPA300电流放大器和电流探头进行电流测试
- win10系统如何打开telnet服务器,win10系统安装并开启Telnet服务的处理步骤
- 《WiscKey: Separating Keys from Values in SSD-conscious Storage》阅读笔记
- 艺术创作六步法则、浅谈色彩、如何理解漫画
- 个人对ReadyBoost加速你的Win7的看法
- 子网掩码是什么,可以做什么
- HC32l130单片机的delay函数怎么写
- 我的图床解决方案,超详细!
- 海康威视的监控软件 手机端
- windows如何修改复制粘贴与剪切快捷键?
- 深富策略:股市崩盘的原因是什么
- 解决mount时发生错误wrong fs type, bad option, bad superblock
热门文章
- ORACLE SGA问题分析
- java u003_我在B站学编程 DAY-003 JAVA基础概念和语法
- constraintlayout布局新特性_AMD发布Ryzen PRO 4000系列移动处理器:多了超线程和商用安全特性...
- android sqlite 操作类封装,[Android] Sqlite 数据库操做 工具封装类
- myelicpes怎么导入PHP项目,利用PHP执行SQL文件,将SQL文件导入到数据库
- django-中间件
- 【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)
- UVA 1645 - Count(简单DP)
- pip: The ultimate package manager for Python
- 【推荐】介绍两款Windows资源管理器,Q-Dir 与 FreeCommander XE(比TotalCommander更易用的免费资源管理器)...