您的位置:首页 > 编程语言 > Java开发

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

2016-08-01 16:51 561 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: