原始数组静态分配 int[] arr = {1,2,3};
增加元素直接放在元素的最后一位 int[] arr02 = {1,2,3,4};
public class Array01{
public static void main(String[] args) {
int[] arr = {1,2,3};//定义一个初始数组
int[] arr02 = new int[4];//重新定义一个新的数组空间为4 也可以用int[] arr02 = new int [arr.length + 1];
for (int i = 0;i<arr.length ;i++ ) {//遍历arr
arr02[i]=arr[i];//赋值
}
arr02[arr02.length-1] = 4;//把4赋值给arr02的最后一个元素
arr = arr02; //让arr指向arr02 相当于把arr的地址给arr02 进行了这一步操作后 arr会销毁
for (int a = 0;a<arr02.length ;a++ ) {
System.out.println(arr[a]);
}
}
}
进阶练习 、用户可以决定是否继续添加 添加成功是否继续 y/n
import java.util.Scanner;
public class Array01{
public static void main(String[] args) {
Scanner myscanner = new Scanner(System.in);
int[] arr = {1,2,3};//定义一个初始数组
do{
int[] arr02 = new int[arr.length + 1];//重新定义一个新的数组空间为4
for (int i = 0;i<arr.length ;i++ ) {//遍历arr
arr02[i]=arr[i];//赋值
}
System.out.println("请输入要添加的元素");
int end = myscanner.nextInt();//用end去接受用户的输入
arr02[arr02.length-1] = end ;//把end赋给最后一个元素
arr = arr02; //让arr指向arr02 相当于把arr的地址给arr02 进行了这一步操作后 arr会销毁
for (int a = 0;a<arr02.length ;a++ ) {
System.out.println(arr[a]);
}
System.out.println("是否需要继续添加 y/n");
char and = myscanner.next().charAt(0);
if(and=='n'){
break;
}
}while(true);
}
}