码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA System.arraycopy 和Arrays.copyof 效率比较

时间:2016-08-01 17:47:48      阅读:829      评论:0      收藏:0      [点我收藏+]

标签:

System.arraycopy()源码。可以看到是native方法:
native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中。 可以将native方法比作Java程序同C程序的接口。
public static native void arraycopy(Object src,  int  srcPos,
           Object dest, int destPos,int length); 

 

 
copyOf,下面是源码,可以看到本质上是调用的arraycopy方法。,那么其效率必然是比不上 arraycopy的
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;
}

 

具体的理由不好说。不过一致的说法和实验证明是arraycopy()效率高!!!T...T

JAVA System.arraycopy 和Arrays.copyof 效率比较

标签:

原文地址:http://www.cnblogs.com/CandiceW/p/5726416.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!