一维数组
变量是一种单个值的存储方式,这种存储方式无法满足日益增多的数据需求,所以我们需要寻找一种可以同时存储多个数据的存储方式。数组可以解决此类问题。
1.什么是数组
数组,顾名思义就是:数据的组合,它是在内存空间中开辟一连串的存储空间,可以存储多个具有相同类型的数据。
而且数组相比于变量来讲,拥有更多的“可玩性”。
2.数组的组成
类比变量来记忆。
变量的组成:
- 数据类型
- 变量名
- 变量值
数组的组成:
- 数组的数据类型:数组存储的是一组相同的数据类型的数据,需要做好指定 。
- 数组名:使用数组时,也需要通过名字来使用。
- 元素:数组中存储的每一个值,我们称之为元素
- 容量:长度,一个数组可以存储多少个元素(一经定义,不可变)
- 下标:索引,数组中每一个存储空间的“序号”,从0开始计算
每一个下标空间,都有默认值。
- byte、short、int、long:0
- float、double:0.0
- boolean:false
- char:一个空格(\U0000)
数组是存储一组具有相同类型数据的定长空间。
3.数组的定义
变量的定义:
数据类型 变量名 = 变量值;
数组的定义1:
// 先声明数组
数据类型[] 数组名 = new 数据类型[容量];
// 数组赋值
数组名[下标] = 元素值;
// 数组使用
数组名[下标]
数组定义2:
// 声明时赋值
数据类型[] 数组名 = {元素1,元素2,元素3,...};
// 声明时赋值
// 后期有时候只能用这种方式
数据类型[] 数组名 = new 数据类型[] {元素1,元素2,元素3,...};
数组的定义,结合循环优化:(动态赋值)
// 先声明数组
数据类型[] 数组名 = new 数据类型[容量];
// 使用循环动态赋值
for (int i = 0; i < 数组容量; i++) {
数组名[i] = 输入值;
}
4.数组的使用
计算最高分
// 计算最高分
// 假定一个守擂的
double max = scores[0];
// 循环比较,如果有比守擂的更强者,则守擂人员更换
// 如果有比最高分还高的成绩,最高分成绩记录更换
for (int i = 1; i < scores.length; i++) {
if (scores[i] > max) {
max = scores[i];
}
}
System.out.println("班级最高分为:" + max);
}