数组扩容+定位
1)先确定添加数应该插到哪个索引(要考虑插在最后的索引情况)
复制到另一个数组用两个游标
2)再扩容
//2024.07.04
public class Homework04 {
public static void main(String[] args) {
int[] arr = {10, 12, 45, 90};
int[] arrNew = new int[arr.length + 1];
int index = -1;//index默认为-1
int insertNum = 23;
for (int i = 0; i < arr.length; i++) {
if (arr[i] >= insertNum) {
index = i;//插入在第一个大于等于该数的下标位置
break;
}
}
if (index == -1) {//比数组中的任何数都大,则插在最后
index = arr.length;
}
for (int i = 0, j = 0; i < arrNew.length; i++) {//使用两个游标进行复制
if (i != index) {
arrNew[i] = arr[j];
j++;
}else{
arrNew[i] = insertNum;
}
}
arr = arrNew;
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}