题目
在数组尾部插入一个数据。
测试举例:
尾插前:1 2 3
尾插后:1 2 3 99
思路:
我们知道数组是内存中一块连续的区域,一经开辟,不能随意调整大小,只能新开辟空间。
借助Arrays.copyOf()函数可以快速调整数组大小,进而在尾部插入一个数据。
代码:
import java.util.Arrays;
public class Main {
public static int[] insertTail(int[] arr, int value) {
// 1 2 3 [value]
// 参数安全检测 int[] 引用数据类型 默认值 null
if (arr == null) {
return null;
}
// 1. 扩容+1
arr = Arrays.copyOf(arr, arr.length + 1);
// 2. 向arr 尾部添加一个数据value
arr[arr.length - 1] = value;
return arr;
}
public static void main(String[] args) {
int[] arr = {
1, 2, 3 };
arr = insertTail(arr, 99);
System.out.println(Arrays.toString(arr));
}
}