一、一维数组的两种定义格式
数组定义格式一
不知元素内容的时候使用
元素类型[] 数组名=new 元素类型[]
int[] arr1 = new int[3];
数组定义格式二
元素类型[] 数组名=new 元素类型[]{元素1,元素2,元素3,元素4};
或
元素类型[] 数组名={元素1,元素2,元素3,元素4}; 静态初始化
int[] arr2 = new int[]{1,2,3,4};
int[] arr3 ={1,2,3,4};
二、二维数组的定义
1、数组的静态声明 int arr[][] = {{1,2,3,},{4,5,6},{7,8,9}};
2、数组的动态声明 int arr[][] = new int[4][5];
int arr[][] = new int[3][];只构造了第一维数组,实际使用前需要将第二维数组创建完成
eg:
arr[0] = new int[2];
arr[1] = new int[3];
arr[2] = new int[4];
三、数组的初始化
1、初始化的类型
数组元素的类型 初始值
2、数组初始化应该注意以下几点:对象引用 null
整形变量 0
浮点变量 0.0
布尔变量 false
字符变量 '\u0000'
1、在赋值号右边没有new运算符,也不说明数组的长度,系统会根据所赋初值的个数自动计算数组的长度
eg:int array[] = {1,2,3}; 系统会自动识别数组长度为3
2、数组的初始化必须把所有初值与数组的声明写在同一个语句里,如果分开写会出错,
eg:int array[]; array = {1,2,3,4,5}; 这两个语句会出错
3、通过new运算创建的数组,可以对每个元素进行访问或使用,不能试图访问所有的元素,不能再整体进行赋值,可以对单个元素赋值和访问
eg:int array[] = new int[5]; array = {1,2,3,4,5}; // 会报错array[0] = 1; 该语句不会出错
四、二维数组注意
class ArrayDemo
{
public static void main(String args [])
{
<span style="color:#ff0000;">//注意区别以下两组打印结果</span>
int arr[][] = new int[3][2];
System.out.println(arr); //打印结果 [[I@15db9742
System.out.println(arr[0]); //打印结果 [I@6d06d69c
System.out.println(arr[0][0]); <span style="color:#ff0000;">//打印结果 0</span>
int num[][] = new int[3][];
System.out.println(num); //打印结果 [[I@7852e922
System.out.println(num[0]); <span style="color:#ff0000;">//打印结果 null</span>
System.out.println(num[0][0]); <span style="color:#ff0000;">//打印结果 NullPointerException</span>
}
}
五、数组的操作:
对数组的最基本的操作就是存和取
核心思想:对脚标操作