1. 通过下标访问指定元素
注意:
- Java语言的数组索引(下标、角标)是从0开始的,数组的下标的最大值长度-1
- 不要超出索引的范围,如果超出范围出现异常java.lang.ArrayIndexOutOfBoundsException
2. 获取数组元素的个数
在Java中,所有数组都提供了一个length属性,通过这个属性可以访问到数组的长度或者数组中元素的个数。
3. 修改数组元素的值
示例
int num2 = arr1[6];
System.out.println(num2);//
//格式:数组名称[下标] = 被修改之后的值
//注意:不管是静态初始化还是动态初始化,都可以采用这种方式修改元素的值
arr1[6] = 100;
System.out.println(arr1[6]);//100
4. 遍历数组
依次访问数组中的每一个元素,获取每个下标对应的元素值
方式一:简单for循环
方式二:增强for循环(foreach)无法使用下标
5. 数组的内存分配
java内存:
栈:存储基本类型数据和引用类型的地址
特点:先进后出,一般空间比较小,存取速度较快
堆:存储引用类型数据,
特点:空间比较大,存储速度相对较慢
方法区: 存储字符串常量池,静态数据,代码和类的元数据
数组属于引用类型,数组引用变量只是一个引用,这个引用变量可以指向任何有效的内存空间,只有当这个引用指向有效的空间时,才可以通过引用去操作真正数组中的元素。
结论:数组的引用变量存储在栈空间中,而真正的数组数据存储在堆空间在中。
画图分析
图一:
图二:
6. 使用数组时常见的问题
1>数组越界异常:ArrayIndexOutofBoundsException
出现的时机:当使用了不存在的下标时,则会出现这个错误
0~length – 1
2>空指针异常:NullPointerException
出现的时机:当数组的引用变量赋值为null,还在后面的代码中使用这个引用