source: https://www.programcreek.com/2015/03/system-arraycopy-vs-arrays-copyof-in-java/
System.arraycopy() vs. Arrays.copyOf() in Java
If we want to copy an array, we can use either
System.arraycopy() or Arrays.copyOf(). In this post, I use a simple example to demonstrate the difference between the two.
1. Simple Code Examples
System.arraycopy()
Output:
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 1, 2, 3, 4, 5, 0, 0, 0, 0]
Arrays.copyOf()
Output:
[1, 2, 3, 4, 5, 0, 0, 0, 0, 0] [1, 2, 3]
2. The Major Difference
The difference is that
Arrays.copyOf does not only copy elements, it also creates a new array. System.arrayCopy copies into an existing array.
If we read the source code of Arrays.copyOf(), we can see that it uses
System.arraycopy().
Comments
Post a Comment