谁帮我讲解下Java的数组及下标的范围啊
在java中数组有这么几种声明 方式。
1. int[] arrs = new int[10];
这种方式等同于int arrs[] = new int[10];
因为数组的长度是固定的,所以在声明的时候必须指定数组的长度。上面我声明了一个10个长度的数组。
下标呢,是从0开始到数组长度的上一位,即 数组长度 - 1,上面的数组最大下标是9。
存取值的时候要通过下边来操作。
例:arr[0] = 1;
arr[1] = 2;
arr[9] = 10;
这样他就会在相应的位置存储给定的值。如果这样 arr[10]就会抛异常,因为最大下标只有9.
取值也是通过下标
例: int num = arr[0]; 这样取到的就是1.
因为数组长度是固定的,所以就算不存值也是会占内存的,
例:int num = arr[8];
我并没给8下标的存值,但是它输出的是0,因为数组时引用类型,默认值是0,自己可以查一下。
还有一种
int[] arrs = new int[]{1,2,3,4,5,6};
声明加赋值的方式,这样后边的中括号就不能制定数组长度了,数组长度根据值的数量决定。
上边这个数组长度就是6,其他用法一样。
百度搜索圈T社区(www.aiquanti.com) 免费视频教程
string数组怎么扩大长度
ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长
我首先想到的就是数组,但java中的数组是定长的,无法动态增加长度。如果要扩充数组,那就只能通过重新定义数组,把旧数组内容拷贝到新数组中。
例如:
1、定义一个旧数组
int[] arrOld = new int[2]; //旧数组定义
2、要扩充数组长度到3,需要重新定义数组
int [] arrNew = new int [ arrOld.length*2 ]; //定义新数组,增加一倍的长度
for ( int i= 0 ;i<arrOld.length;i++){
arrNew[i] = arrOld[i]; //把旧数组中的元素拷贝到新数组中
}
大概有这么个思路,具体如何实现,有空再给出一个完整的解决方法;
题如下:
/**
*在不使用list的add的情况下将element添加到list中
*/
public class testAdd(Object element){
}
要扩大string数组的长度,可以使用以下步骤
1. 创建一个新的更大的string数组,可以通过使用new关键字来分配更多的内存空间。
2. 将原始数组中的元素复制到新数组中,可以使用循环遍历原始数组,并将每个元素复制到新数组的相应位置。
3. 如果需要,可以在新数组的末尾添加更多的元素。
4. 最后,将新数组赋值给原始数组,以便在后续的代码中使用扩大后的数组。
这种方法可以扩大数组的长度,因为它创建了一个新的更大的数组,并将原始数组中的元素复制到新数组中。这样做的原因是,数组在内存中是连续存储的,所以需要重新分配更多的内存空间来容纳更多的元素。