- 1
- /**
- 2 * 手动循环扩增
- 3 */
- 4 int[] arr = {
- 1,
- 2,
- 3
- };
- 5 int[] tempArray = new int[arr.length * 2];
- 6
- for (int i = 0; i < arr.length; i++) {
- 7 tempArray[i] = arr[i];
- 8
- }
- 9 //tempArray = { 1, 2, 3, 0, 0, 0 }
- 10 11
- /**
- 12 * System.arraycopy
- 13 * 将原有的数组复制到一个新的长度更长的数组里,以达到扩增的目的
- 14 */
- 15 int[] arr1 = {
- 1,
- 2,
- 3
- };
- 16 int[] newArray = new int[arr1.length * 2];
- 17 System.arraycopy(arr1, 0, newArray, 0, arr.length);
- 18 //newArray = { 1, 2, 3, 0, 0, 0 }
- 19 20
- /**
- 21 * Arrays.copyOf
- 22 * 底层实现还是System.arraycopy
- 23 * 对自身进行扩增
- 24 */
- 25 int[] arr2 = {
- 1,
- 2,
- 3
- };
- 26 arr2 = Arrays.copyOf(arr2, arr2.length * 2);
- 27 //arr2 = { 1, 2, 3, 0, 0, 0 }
来源: http://www.bubuko.com/infodetail-2074483.html