正文
04JAVA基础数组
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
概念
存储同一种数据类型的多种元素的容器
数组初始化
动态初始化
设定数组长度,系统自动分配默认值
int[] arr = new int[3];
静态初始化
给定数组默认值,系统自动分配长度
int[] arr = new int[]{1,2,3};//完全结构
int[] arr = {1,2,3};//简写,在内存图中,也是先开辟一个长度为3,默认值都为0的数组,然后再把每个默认值改为1,2,3
JVM内存分配
存储同一种数据类型的多种元素的容器
动态初始化
设定数组长度,系统自动分配默认值
int[] arr = new int[3];
静态初始化
给定数组默认值,系统自动分配长度
int[] arr = new int[]{1,2,3};//完全结构
int[] arr = {1,2,3};//简写,在内存图中,也是先开辟一个长度为3,默认值都为0的数组,然后再把每个默认值改为1,2,3
JVM内存分配
名称 | 作用 |
---|---|
栈 | 存储局部变量,使用完成立即销毁 |
堆 | 存储 new出来的,等垃圾处理器空闲的时候销毁 |
方法区 | |
本地方法区 | |
寄存器 |
二维数组
动态初始化
int[][] arr = new int[m][n]; //m为二维数组中一维数组个数,n为一维数组中元素格式;
静态初始化
int[][] arr = new int[][]{{1,2},{5,6}};
int[][] arr = {{1},{2}};
数组错误
ArrayIndexOutOfBoundsException:数组索引越界异常
NullPointerException:空指针异常
动态初始化
int[][] arr = new int[m][n]; //m为二维数组中一维数组个数,n为一维数组中元素格式;
静态初始化
int[][] arr = new int[][]{{1,2},{5,6}};
int[][] arr = {{1},{2}};
ArrayIndexOutOfBoundsException:数组索引越界异常
NullPointerException:空指针异常