一、数组基本用法
在编写代码的过程中,有的时候会发现当需要的变量少的时候我们可以直接定义,例如需要两个整型变量:int a;int b就可以解决,但是当我们需要10个、20个甚至更多的变量的时候我们难道要一直这样定义变量吗?且不说这样的代码有多么的差,就是时间上也无法接受,因此Java中提供有数组。数组是一块连续的内存,存储的是一组相同类型的数据的集合。
1、数组的定义
使用格式:
静态初始化(完整形式):数组类型 [] 数组名称 = new 数据类型 [] { 初始化数据 };
静态初始化(简写形式):数据类型 [] 数组名称 = { 初始化数据 };
动态初始化:数据类型 [] 数组名称 = new 数据类型 [ 数组长度 ];
使用上述格式创建数组:
//静态初始化数组(完整形式)
int[] array1 = new int[] {
1, 5, 7, 9};
//静态初始化数组(简写形式)
int[] array2 = {
2, 4, 6, 8};
//动态初始化数组
int[] array3 = new int[3];
array3[0] = 10;//通过数组索引给数组内容赋值
array3[1] = 20;
array3[2] = 30;
//也可以如下初始化定义
int[] array4 = null;
array4 = new int[] {
};
注意事项:
① 数组的下标是从0开始,而不是从1开始,因此数组的最大索引值为:数组长度 - 1
② 动态初始化数组之后给数组赋值的时候索引值不能超过数组长度(即小于数组长度)。
③ 当数组定义为null的时候,此时并不能操作该数组,不然编译可以通过,但是运行时会引发空指针错误(java.lang.NullPointerException)。说明:空指针错误的产生原因有很多,但不一定是数组所引发的。
如下示例:
public class Test {
public static void main(String[] args) {
int[] array4 = null;
array4 = new int[] {
};
System.out.println(array4[0]);
}
}
输出结果:
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 0
at Test.main(Test.java:5)
输出结果中括号里边表示:产生运行错误的代码行数。
2、数组的使用
数组的使用以示例的代码为例使用数组。
示例一:获取数组长度和访问数组元素
public class Test {
public static void main(String[] args) {
int[] array = {
2, 4, 6, 8};
System.out.println("数组长度:" + array.length);
System.out.println(array[0]);
System.out.println(array[1])