活动地址:CSDN21天学习挑战赛
学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…
…
数组
一、数组的概念
数组就是用来存储一批同种类型数据的内存区域(可以理解成容器),数组变量名中存储的是数组在内存中的地址,数组是引用类型。
二、数组的定义
静态初始化数组(定义时直接给数组赋值):
静态初始化完整格式:
数据类型[] 数组名 = new 数据类型[] {元素1,元素2,元素3};
int[] ages = new int[] {1,2,3,99};
静态初始化简化格式:
数据类型[] 数组名 = {元素1,元素2,元素3};
int ages = {1,2,45,99};
动态初始化数组(定义数组的时候只确定元素的类型和数组的长度,之后再存入具体数据):
动态初始化格式:
数据类型 [] 数组名 = new 数据类型[长度];
int [] ages = new int[5];
动态初始化元素默认值:
byte、short、int、char、long 类型数组元素默认值都是0
float、double 类型数组元素默认值都是0.0
boolean及String类型数组元素默认值分别是false、null
三、数组的访问
数组名称[索引]
索引下标从0开始
注意事项:
数据类型[] 数组名 也可以写成数据类型 数组名[]
数组一旦定义出来,程序的执行过程中,长度、类型就固定了。
四、数组的遍历
int[] ages = {20,30,40,50};
for (int i = 0; i <ages.length;i++){
System.out.println(ages[i]);
}
int[] ages = {20,30,40,50};
for (int each:ages){
System.out.println(each);
}
五、数组排序
数组排序的技术:
1.冒泡排序
2.选择排序
3.快速排序
4.插入排序
5…
数组搜索相关的技术:
1.二分搜索
2.分块查找
3.哈希表查找