Java实现可变数组

您所在的位置:网站首页 java中怎么创建数组 Java实现可变数组

Java实现可变数组

2024-01-16 09:53| 来源: 网络整理| 查看: 265

需求如下: 1,默认初始化10个空间 2,每次插入数据,判定空间是否够 3,不够就3倍新创建一个数组,并将原有数组数据全部移到新的数组中,并引用指向新的数组 4,设置一个成员属性,记住当前空间已有的长度

代码如下:

package test0724.demo1; import java.util.Arrays; import java.util.Scanner; /** * 可变数组 * 1,默认初始化10个空间 * 2,每次插入数据,判定空间是否够 * 3,不够就3倍新创建一个数组,并将原有数组数据全部移到新的数组中,并引用指向新的数组 * 4,设置一个成员属性,记住当前空间已有的长度 */ public class VariableArray { private static int existLength = 0; //当前数组已有长度 private static int arraySpace = 10; //数组默认初始化空间为10 public static void main(String[] args) { //第一步:提示用户插入数据的相关提示语 //第二步:让用户输入想插入的数据(注意:一次插入太多数据会出现数组越界异常,利用try-catch,可以多次创建3倍数组) //第三步:判断空间是否足够 //第四步:空间足够就直接赋值,不够就3倍创建数组,再赋值 //第五步:打印新数组 showMain(); } //提示用户输入插入数据的次数 public static void showMain(){ System.out.println("欢迎进入数据插入系统:"); int[] array = new int[arraySpace]; Scanner sc = new Scanner(System.in); System.out.println("请输入插入数据的次数:"); int num = sc.nextInt(); //用户插入数据的次数 for (int i = 0; i Scanner sc = new Scanner(System.in); System.out.println("请输入你想插入的数的个数:"); int num = sc.nextInt(); existLength += num; //判断空间是否足够,不够就3倍创建数组 if(checkSpace(arraySpace) == false){ array = createNewArray(array); } //给数组赋值新插入的元素(注意:一次插入太多数据会出现数组越界异常,可以再次创建3倍数组) try { for (int i = existLength - num; i array = createNewArray(array); } //打印新数组 showArray(array); return array; } //判断空间是否足够 public static boolean checkSpace(int arraySpace){ if(existLength arraySpace *= 3; int[] newArray = new int[arraySpace]; for (int i = 0; i System.out.println("插入后的数组为:"); System.out.println(Arrays.toString(array)); System.out.println("数组的长度为:" + array.length); } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3