Java中如何对数组进行扩容呢?
下文笔者讲述数组扩容的方法及示例分享,如下所示
数组扩容的原理
1.Java数组对象的大小是固定不变的,数组对象是不可扩容的 2.使用数组复制方法可以变通的实现数组扩容 3.System.arraycopy()可以复制数组 4.Arrays.copyOf()可以简便的创建数组副本 5.创建数组副本的同时将数组长度增加就变通的实现了数组的扩容
数组扩容的示例
//先创建数组 import java.util.Arrays; //数组的扩容示例 public class Test { public static void main(String [] args){ //创建一个原始数组,并做好初始化。 // int [] arry = {1,3,5,7,9}; int arry[] =new int[]{1,3,5,7,9}; int arry1[]=new int[7];//新建一个新数组这里的7=arry.length+需要扩容的长度 System.out.println("打印原始数组的长度为:"+arry.length); System.out.println("打印新数组的长度为:"+arry1.length); //验证该数组有没有创建完成,可以获取一下数组元素看看能不能成功。 // System.out.println(arry[1]); //把从旧数组中获取的数据一个一个的存到新的数组里面去,并新增两个数:11,13。 //如何把数据存到数组里面去,使用arry1[0]=1; /* //方法一:循环遍历原始数组arry,长度是固定的,所以用for循环。 //1、先完成复制数组 for(int i=0;i<arry.length;i++){ arry1[i] = arry[i]; } //2、再完成赋值插入操作,即已完成数组的扩容操作。 arry1[5]=11; arry1[6]=13; System.out.println("新数组为:"+arry1[5]); System.out.println("新数组为:"+arry1[6]); */ /* //方法二:使用java的util包的Arrays类的copyOf(原数组名,新数组长度)方法来进行复制。 arry1 = Arrays.copyOf(arry,arry.length+2); arry1[5] = 11; arry1[6] = 13; System.out.println("新数组为:"+arry1[5]); System.out.println("新数组为:"+arry1[6]); */
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。