数组的特点
特点
-
数组元素的类型必须一致,char类型与ACSII码表对应
-
数组元素连续,空间大小一致,呈现线性结构
-
数组长度一旦固定,不可改变,不仅可以存储基本数据类型,还可以存储引用数据类型,数组本身也是引用类型
String str = { "1", "2" ,"3" }
优点
- 根据索引去访问元素
- 能存储较多元素
- 根据索引去遍历
缺点
- 根据内容找索引很慢
- 数组大小一旦确实就无法改变
- 只能存储一种数据类型
- 怎加超出长度时很慢。删除也是
foreach底层逻辑
//自己写的源代码
for (int age:ages) {
System.out.println(age);
}
//字节码反编译
for(int var4 = 0; var4 < age; ++var4) {
int age = var2[var4];
System.out.println(age);
}
底层还是使用的for循环
数组检索速度快
<img src="01.数组的特点.assets/image-20230724175452872.png" alt="image-20230724175452872" style="zoom:50%;" />
- 内存地址固定,且为线性结构
- 内存连续,数组下标加一,等同于内存地址加一,可以快