一.数组
1.概述
是一个容器,本身属于引用类型
2.作用
一次存储多个数据
3.特点
a.技能存储基本类型数据,还能存储引用类型数据
b.定长
4.数组定义
a.动态初始化
数据类型[] 数组名 = new 数据类型[长度]
b.静态初始化
数据类型[] 数组名 = new 数据类型[]{元素一,元素二,元素三...}
c.简化静态初始化
数据类型[] 数组名 = {元素一,元素二,元素三...}
5.数组操作
a.获取长度
数组名.length
b.存数据
数组名[索引值] = 值
将值存储到数组的指定索引位置上
c.获取数据
数组名[索引值]
d.遍历
数组名.fori
e.索引
指的是元素在数组中存储的位置,从0开始最大索引值为数组长度-1,唯一
6.常见问题
a.ArrayIndexOutOfBoundsException
数组索引越界异常 -- 原因:操作的索引超出了数组索引范围
b.NullPinterException
空指针异常 -- 原因:数组为null,再去.
二.二维数组
1.概述
数组中嵌套了多个一维数组
2.定义
a.动态初始化
数据类型[][] 数组名 = new 数据类型[m][n]
m -- 代表二维数组的长度(有多少个一维数组)
n -- 每一个一维数组的长度
b.简化静态初始化
数据类型[][] 数组名 = {{元素1,元素2...},{元素1,元素2...}...}
3.操作
a.存值
数组名[i][j] = 值
i -- 代表的是一维数组在二维数组中的索引位置
j -- 代表的是元素在一维数组中的索引位置
b.取值
数组名[i][j]
c.遍历
先遍历二维数组,将每一个一维数组取出来,再遍历每一个一维数组