数组:存放同一种数据类型元素的集合,也可以看作是一个容器。
特点:
1、元素的数据类型一致,可以存放基本数据类型,也可以存放引用数据类型。
2、数组的长度是固定的。
数组的定义格式:
1、数据类型[] 数组名; (推荐使用第一种)
2、数据类型 数组名[];
数组的初始化方式:
1、动态初始化:在定义时候只给定数组的长度,值是由系统默认给出的。
语句定义格式:数据类型[] 数组名 = new 数据类型[元素的个数];
举例:int[] arr = new int[3];
表示的是定义一个长度为3并且元素是int类型的一维数组。
2、静态初始化:在定义的时候,就手动给出元素值。
语句定义格式:数据类型[] 数组名 = new 数据类型[]{元素值1,元素值2…};
简化格式:数据类型[] 数组名 = {元素值1,元素值2…};
JVM将内存划分成的5个部分,
栈:局部变量和方法的调用
堆:new出来的东西都在堆里面
方法区(面向对象的时候讲解)
本地方法区
寄存器
数组遍历:
获取的长度的属性:length
使用格式:数组名.length
2、二维数组:元素是由一维数组组成的数组
定义格式一:
数据类型[][] 数组名 = new 数据类型[m][n];
m:表示的是有多少个一维数组
n:表示的一维数组的元素个数
举例:int[][] arr = new int[3][2];
表示的是定义一个有3个长度为2的一维数组组成的二维数组。
定义格式二:
数据类型[][] 数组名 = new 数据类型[m][];
m:表示的是有多少个一维数组
举例:int[][] arr = new int[4][];
定义格式三:
数据类型[][] 数组名 = new 数据类型[][]{{元素1,元素2…},{元素1,元素2,元素3…},…};
简化格式:数据类型[][] 数组名 = {{元素1,元素2…},{元素1,元素2,元素3…},…};
注意:
1、以下几种写法也是二维数组
数据类型[] 数组名[];
数据类型 数组名[][];
2、格式3不能与格式1、格式2混合使用。
错误格式:int[][] arr = new int[2][]{{1,2},{3,1,2}};