数组是多个相同的类型按照一定的顺序排列的集合,并使用一个名字命名,并通过编号的方式进行统一管理
数组相关的概念
-
数组名
-
下标(索引)
-
元素
-
数组的长度:元素的个数
-
数组的特点:
-
1.数组是有序排列的
-
2.数组本身是引用数据类型,而数组中的元素可以是任何数据类型
-
3.创建数组对象会再内存中开辟出已连续的内存空间,数组名就是内存空间的首地址
-
4.数组的长度一旦确定,就不能修改
-
5.可以通过下标获取元素
-
数组的分类
-
1.按照维数来分:一维数组 二维数组 ...
-
2.按照数组元素类型来分:基本数据元素类型的数组,引用数据类型的数组
-
· 1.一维数组的声明和初始化
-
1.1动态初始化
-
数组类型[] 数组名 = new 数据类型[数组长度];定义了数组长度,并没有给数组中的值赋值
-
1.2 静态初始化
-
简化格式:
数据类型[] 数组名称 = {值, 值, …};
完整格式(推荐):
数据类型[] 数组名称 = new 数据类型[]{值, 值, …}; -
2.获取数组指定位置的元素
-
a. 通过数组下标索取来取得元素,下标默认从0开始。数组下标超出数组长度,数组越界异常(运行时异常)。
-
b. 数组属于引用数据类型,在使用之前一定要开辟空间(实例化),否则就会产生"NullPoninterException"。
-
3.获取数组的长度
-
数组名称.length:取得数组长度(数组长度可以由属性length获得)。
-
4.遍历数组
-
数组遍历推荐使用for-each循环(仅限于数组内容读取),要修改数组内容,还是使用常规for循环:for(int x: 数组名称) {……}
-
也可以使用普通循环来遍历数组元素
-
5.数组元素的默认初始化值
-
byte在Java 程序中使用数组时,如果没有为数组元素指定初始值,byte 型数组元素的默认初始值为0。
-
short在Java 程序中使用数组时,如果没有为数组元素指定初始值,short 型数组元素的默认初始值为0。
-
int在Java 程序中使用数组时,如果没有为数组元素指定初始值,int 型数组元素的默认初始值为0。
-
long在Java 程序中使用数组时,如果没有为数组元素指定初始值,long 型数组元素的默认初始值为0L。
-
float在Java 程序中使用数组时,如果没有为数组元素指定初始值,float 型数组元素的默认66初始值为0.0f。
-
double在Java 程序中使用数组时,如果没有为数组元素指定初始值,double 型数组元素的默认初始值为0.0d。
-
char在Java 程序中使用数组时,如果没有为数组元素指定初始值,char 型数组元素的默认初始值为字符.\u.0000
-
boolean在Java 程序中使用数组时,如果没有为数组元素指定初始值,boolean 型数组元素的默认初始值为false。
. 引用类型(如类、接口等类型)
在Java 程序中使用数组时,如果没有为数组元素指定初始值,引用类型(如类、接口等类型)数组元素的默认初始值为null,例如,String 类型数组元素的默认初始值就为null。
- 6.数组的内存结构