数组复制的方式以及效率
来源:互联网 发布:九院吴巍 知乎 编辑:程序博客网 时间:2024/06/01 07:49
参考《链接》
简介
在Java中数组的复制有多种方式,常见的有:System.arraycopy、clone、Arrays.copyOf、for循环等,虽然这些都能实现数组的复制,但是效率相差较大。
效率:System.arraycopy > clone > Arrays.copyOf > for循环
理由:
A:for循环,效率最低,随便写个程序验证一下,效率慢的不是一点.....我测试的时候比clone和System.arraycopy差了100多倍
B:System.arraycopy:原型是public static native void arraycopy(Object src, int srcPos , Object dest, int destPos, int length);
C:Arrays.copyOf底层调用了上面的System.copyOf效率比上面两个低。
D:clone()的完整定义:protected native Object clone() throws CloneNotSupportedException;
总结
其实,一般情况下,前三个的效率差别几乎忽略不计,但是从Arrays.copyOf底层调用的System.arraycopy效率自然要低一些。而clone()和arraycopy只是从实验的结果来看是arraycopy的效率高。
阅读全文
0 0
- 数组复制的方式以及效率
- C#复制数组的两种方式,以及效率比较
- java数组复制的方式和效率比较
- java数组复制的方式和效率比较
- java数组复制的效率
- 使用字节流复制文件的四种方式以及效率比较
- Java数组拷贝/复制的效率比较
- Java数组拷贝/复制的效率比较
- java的数组复制效率比较
- Java的内存复制(主要是数组)效率比较
- java数组复制的4种方式
- [java]数组复制的2种方式
- MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结
- MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结
- java笔记之数组的概念、声明、初始化、访问方式、复制和动态扩展算法以及递归
- java HashMap遍历的三种方式以及效率对比
- JavaScript数组的3种循环方式效率的比较
- 数组、List、ArrayList的使用以及for、foreach效率比较
- 类中的四个默认成员函数+运算符重载
- C语言关键字const
- Web 前端代码规范
- springBoot 集成 Quartz任务调度
- cartographer源码分析(8)-common-make_unique.h
- 数组复制的方式以及效率
- mkimage使用详解
- x86架构系统启动过程
- JAVA基础-多线程
- 浅析xx_bos_managerment的开发技术
- 最优化
- 【转载】MIGO BAPI_GOODSMVT_CREATE 源代码
- MFC CMap整理
- 信号屏蔽(pending)