Java数组赋值效率比较问题
Posted 木子归零
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java数组赋值效率比较问题相关的知识,希望对你有一定的参考价值。
1.for 循环逐一复制
2.System.arraycopy
3.Array.copyOf
4.使用clone方法
以上四种方法效率比较:
System.arraycopy > clone > System.copyOf > for循环
注解:arraycopy作为natvie(本地)方法,是最快的,下面该方法源码的描述。
public static native void arraycopy(Object src, int srcPos,Object dest, int destPos,int length);
Arrays.copyOf(Arrays类)的实现,在源码中是调用System.copyOf的,多了一个步骤。
关于clone的源码定义如下;
protected native Object clone() throws CloneNotSupportedException;
关于clone网上好多帖子给出的是实验结果。
一下帖子可能讲的更详细:
http://xuyuanshuaaa.iteye.com/blog/1046621
http://blog.csdn.net/stand1210/article/details/52686740(效率实验)
http://blog.csdn.net/tingzhiyi/article/details/52344845
以上是关于Java数组赋值效率比较问题的主要内容,如果未能解决你的问题,请参考以下文章