在开发中,数组复制是经常使用的,很多方法都可以进行数组赋值,但是效率却天差地别:效率最高的是:System.arraycopy()
, 下面是它的使用方式的参数说明:
们可以看看它的源代码,它是个native方法,毫无疑问效率最高:
再说说Arrays.copyof()方法,看源代码发现,它还是调用了System.arraycopy()方法:
然后呢,再看看Object类的clone方法:
clone()的返回值是Object类型,强制类型转换毫无疑问是降低了效率,但是好歹是native方法,不会存在有特别明明显的差距的。当然自己通过for循环的方式也可以进行数组的复制,但是效率依旧是很低的!所以还是推荐用System.arraycopy()
来进行数组的复制吧!
- 本文作者: Tim
- 本文链接: https://zouchanglin.cn/2018/02/28/1029426662.html
- 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 许可协议。转载请注明出处!