数组
定义格式
定义
1.存储的都是同类型数据
2.一次性大量用于存储数据䣌变量
格式
1.int[] arr
通常定义的时候都是这种
2.int arr[]
数组初始化
1.动态初始化
格式
int[] arr=new int[数字大小]
2.静态初始化
格式
1)int[] arr=new int[]{1,2,3}
2)int[] arr={1,2,3}
数组得索引
格式
数组名[索引]
在java中内存的分布
1.数组初始化时默认值
整数
0
浮点数
0.0
布尔值
false
字符
默认空字符
引用类型
null
2.内存中流程
1.int[] arr在栈中生成
2.new int[10] 这时在堆中创造空间,还把地址给arr
如果访问arr[几]
那么arr就通过[几]指向几
常用操作
1.数组名.length
2.Arrays.toString(数组名)
快速打印数组(这个在算法中如果想要快速知晓数组是非常快的)
常遇到的问题
索引越界
这时指:数组长度为5。你索引长度为arr[5]就会报错超出了范围
空指针异常
arr=null
此时arr操作不了堆里面的数据
此时强行访问就会造成空指针异常
null
引用类型的默认值,表示不指向任何有效对象。
二维数组
格式
1.int[][] arr
2.int arr[][]
3.int[] arr[]
数组的初始化
1.动态
int[][] arr=new int[2][3]
2.静态
int[][] arr={{1,2},{1.2}}
int[][] arr={{1},{1,2}}
3.注意事项
静态定义的时候他的各意维数组长度可以不一样