数组
- index下标[0] 第一个元素。
- 数组的长度(元素的个数)。
- 数组元素可谓基本数据类型或引用数据类型。
- 一旦初始化完成,长度不可更改。
- 占据一块连续空间。
一维数组
-
数组的声明、初始化
```
double[ ] prices; //声明
prices = new double[ ]{20,33,44}; //初始化int arr[ ] = new int [ 4 ]; //声明&初始化 int[ ] arr = new int [ ] {1,2,3,4 } //声明&初始化 int[ ] arr = {1,2,3,4 } //类型推断 ```
-
调用数组的指定元素( )
System.out.println( arr[0] ); System.out.println( arr[2] );
-
数组的属性、length数组的长度
System.ou.print( arr.length);
-
数组的遍历
for(int i = 0 ; i<4 ;i++){ System.out.print ( arr[ i ] ); }
-
数组元素的默认初始化值
整型数组元素:0
浮点型:0.0
字符型:0
Boolean:false
引用数据类型:null -
一维数组的内存解析
虚拟地址0x12ab 、0xaabb、0x12cd
1. 虚拟机 栈;存放方法中声明的变量。arr 2. 堆:存放数组的实体(即数组中的所有元素) { 1,2,3,4 }
二维数组
-
数组的初始化,赋值
列:地址 指向行
-
数组元素的调用
外层元素存储内层的地址值,内层为元素真正位置。 -
数组的长度
1为外层数组长度
2.3.4分别为1,2,3层数组内层数组长度 -
遍历数组
-
数组元素的默认初始化值
外层元素存储内层的地址值,元素类型;内层为元素真正位置。
数组常见算法
1.数值型数组特征值统计(平均值、最大/小值、总和等)
2.数组元素的赋值
3.数组的复制
4.数组的反转
5.数组的扩容与缩容
6.数组元素的查找
顺序查找:
二分法查找:
7.数组的排序
Array工具类以及常见数组异常
Array工具类
前面比较所储存的值(内容/地址) 后面比较的是内容,相同false。
下面为equals(内涵代码)
输出数组内元素
常见数组异常
地址改为空,指针不存在
指向不存在
对象调用,但对象未初始化