IDEA 快捷键补充
内容提醒 ctrl+alt+space
单行正文 ctrl+/
多行正文 ctrl+shift+/
修改格局 ctrl+alt+L
数组
1、定义
int[] a
(定义了一个 int 类型的数组,数组名是 a)
2.1 动静初始化
int[] a = new int[3];
(不赋值,只指定数组长度)
2.2 动态初始化
int[] a = new int[3]{11,44,55};
简化:int[] a = {11,44,55};
内存调配
P61
栈:存储局部变量
堆:存储 new 出的对象
例:
int[] a = new int[3]
等式右边在栈中
等式左边在堆中,开拓了一块数组空间存储数组 a,生成地址 xxx
栈中 a 指向地址 xxx
System.out.println(a)
栈中 a 找到指向的地址,输入地址
System.out.println(a[0])
栈中 a 找到指向的地址 xxx,找到 0 号元素,输入数值。
内存调配图
多个数组
第二个数组指向第一个数组
数组的异样
数组越界异样: 拜访了数组中不存在的索引对应的元素
ArrayIndexOutOfBoundsException
空指针异样:拜访的数组曾经不再指向堆内存的数据
NullPointerException