做淘宝优惠券怎么有网站,为什么我的网站备案通过还是显示未备案,网站开发设计大概多少费用,朝阳做网站一、java扩容缩容的说明 我们前面学过#xff0c;创建java数组会在内存中开辟一块连续的空间#xff0c;该空间固定不允许扩大和缩小。那么一个java数组要怎么实现扩容和缩容操作呢#xff1f; 也许你会想到。再创建一个大容量的数组#xff0c;将旧数组中的元素拷贝到新数…一、java扩容缩容的说明 我们前面学过创建java数组会在内存中开辟一块连续的空间该空间固定不允许扩大和缩小。那么一个java数组要怎么实现扩容和缩容操作呢 也许你会想到。再创建一个大容量的数组将旧数组中的元素拷贝到新数组中最后将新数组的地址值赋给旧数组的变量即可。 猜的很对。其实java数组的扩容在JDK中有已经实现的方法也是使用的这种思想。缩容其实也一样想必你已经有自己的想法了吧。
二、java数组的扩容
案例说明 案例1数组的扩容: 现有数组 int[] arr new int[]{1,2,3,4,5}; 现将数组长度扩容1倍并将10,20,30三个数据添加到arr数组中如何操作 代码实现 public class ArrayExer01_1 { public static void main(String[] args) { int[] arr new int[]{1,2,3,4,5}; //扩容1倍容量 // int[] newArr new int[arr.length * 2]; //或 int[] newArr new int[arr.length 1]; //将原有数组中的元素复制到新的数组中 for (int i 0; i arr.length; i) { newArr[i] arr[i]; } //将10,20,30三个数据添加到新数组中 newArr[arr.length] 10; newArr[arr.length 1] 20; newArr[arr.length 2] 30; //将新的数组的地址赋值给原有的数组变量 arr newArr; //遍历arr for (int i 0; i arr.length; i) { System.out.print(arr[i] \t); } } }
三、java数组的缩容
案例说明 案例数组的缩容 现有数组 int[] arr{1,2,3,4,5,6,7}。现需删除数组中索引为4的元素。 代码实现 public class ArrayExer01_2 { public static void main(String[] args) { int[] arr{1,2,3,4,5,6,7}; int deleteIndex 4; //方式1不新建数组 // for(int i deleteIndex;i arr.length - 1;i){ // arr[i] arr[i 1]; // } // // //修改最后元素,设置为默认值 // arr[arr.length - 1] 0; //方式2新建数组新的数组的长度比原有数组的长度少1个 int[] newArr new int[arr.length - 1]; for (int i 0; i deleteIndex; i) { newArr[i] arr[i]; } for(int i deleteIndex;i arr.length - 1;i){ newArr[i] arr[i 1]; } arr newArr; //遍历arr数组 for (int i 0; i arr.length; i) { System.out.print(arr[i] \t); } } }