區別:System.arraycopy()必須先建立一個數組對象,而Arrays.copyOf()返回一個數組對象,不用事先new一個數組。Arrays.copyOf里面調用了System.arraycopy方法
Arrays.copyOf()測試:
Arrays類中的copyOf方法:
若newLength的大小大于original數組的大小,則后面的初始化為默認值,即 0
System.arraycopy()的實現:
這是一個native method ,這個方法是System類中的一個JNI實現
(JNI,Java Native Interface 故名思意,就是java語言調其它語言的一個接口)
這個JNI的底層在不同的平臺上不一樣。
打個比方windows 其實java的JNI就是調了dll。
Unix 其實就是調了.so 共享庫