一维数组
数组的定义和创建
数组的声明:
或:
- 数组中的元素可以是任何数据类型,包括基本数据类型和引用类型
- 数组中元素的个数,称为数组的长度(length)
- JAVA语言中声明数组时不能指定其长度
构造数组:
- 构造/创建数组使用了关键字new,它是内存分配操作符,所谓创建数组,就是在内存中给数组分配空间。
注:数组长度一经定义,固定不变。
数组声明的同时并且完成初始化:
或:
- 初始化数组:使用new创建数组后,所有元素其实已经被初始化,元素都是默认值,这种初始化就叫做”动态初始化“。
- 还有一种初始化方式是不使用new,而是在声明数组的同时就完成创建和初始化工作,这叫做”静态初始化“。
如:int[ ] buf = {10,20,30,66};
数组元素的赋值:
数组的内存模型
- 数组是存储多个相同类型变量的对象。数组的所有元素保存在堆内存中。
创建一个数组就是在堆中创建一个数组对象。 - 数组创建后立即拥有默认值。
1、整数类型数组的默认值是0
2、String类型定义的数组,默认值是null
3、char类型定义的数组,默认值是0对应的字符
4、浮点类型定义的数组,默认值是0.0
5、boolean类型数组的默认值是false - 索引从0开始。
- 连续分配
数组长度
数组有length属性,用来显示本数组的长度,获取数组长度语法为:
数组的异常
数组越界异常( ArrayIndexOutOfBoundsException ):
多维数组
多维数组的创建:
或:
或:
多维数组的构造:
或:
注:必须声明行的个数
多维数组的初始化:
或:
数组排序
冒泡排序
int[] a= {12,1,2,56,7,8};
运算过程:
第1趟:1,2,12,7,8,56
第2趟:1,2,7,8,12,56
第3趟:…
第a.length-1趟结束