一 . 数组
先来看看格式
数据类型[] 数组名
例如;int[] arr;
还有一种c语言的写法
数据类型 数组名 []
例如;int arr[];
因为这个是c语言写法,所以在java中推荐第一种写法
一.1 动态数组
格式
数据类型[] 数组名 = new 数据类型[数组⻓度];
例如
int[] arr=new int[5];
一. 2 静态数组
格式
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3};
简易版
数据类型[] 数组名 = {元素1,元素2,元素3};
元素代表数组中固定的存储数据,每个元素有对应的下标,下标是从零开始,例如元素1的下标为0,元素2的下标为1,以此类推。
二 . 内存分配
Java虚拟机要运⾏程序,必须要对内存进⾏空间的分配和管理。运⾏完毕后会清空内存。
如图所示,我们的字节码文件也就是class文件,是在方法区中加载
而方法比如main方法运行时会放在栈内存中,栈内存中new出来的对象会在存放在堆内存,并且会产生相应的地址,并且会赋给数组名。而我们new出来的数组长度会在堆内存开辟一个格子,而这个格子会分出来对应元素的小格子,也就是有多少元素,会有多少小格子。
三 . 多维数组
动态格式
数据类型[][] 数组名 = new 数据类型[二维数组⻓度][二维数组中的一维数组⻓度];
例如
int[][] arr=new int[3][2];
- 这是一个二维数组
- 这个二维数组中有三个一维数组
- 每一个一维数组中有两个元素
静态格式
数据类型[][] 数组名 = {{元素1,元素2,元素3,...},{元素1,元素2,...},...};
如同动态数组一样,只是静态数组每个元素都是定义好的。