掌握数组的定义方式一:
静态初始化数组(适合一开始就知道要存入哪些元素值的业务场景)
1,数据类型 [] 数组名 = new 数据类型 []{元素1,元素2,元素3...}
int[] ages = new int[]{12,24,36};
double[] scores = new double[]{89.9 , 99.5 , 59.5 , 88};
System.out.println(ages);
System.out.println(scores);
2,简化写法
数据类型[] 数组名 = {元素1,元素2,元素3...}
int[] ages2 = {12,24,36};
double[] scores2 = {89.9,99.5,59.5,88};
数据类型[] 数组名 也可写成 数据类型 数组名[]
int ages3[] = {12,24,36};
double scores3[] = {89.9 , 99.5 , 59.5 , 88};
掌握数组的访问
int[] arr = {12,24,36};
// 0 1 2
1,访问数组的全部数据
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
2,修改数组中的数据
arr[0]=66;
arr[2]=100;
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
3,访问数组中的元素个数 : 数组名.length
System.out.println(arr.length);// 3
获取数组的最大索引:arr.length-1(前提是数组中存在数据)
System.out.println(arr.length-1);
掌握数组的遍历 把数组中的值都访问一遍
int[] ages = {12,24,36};
for(int i = 0;i < ages.length;i++){
System.out.println(ages[i]);
}
foreach语句:
for(type element :array){
System.out.println(element);
}
int[] arr={1,2,3,4,5};
for(int element : arr){
System.out.println(element);//相当于遍历
}
掌握定义数组的方法二:
动态初始化数组 适合开始不确定具体元素值,只知道元素个数的业务场景
1,数据类型[] 数组名 = new 数据类型[长度]
int[] ages = new int[3];// 0 1 2
System.out.println(ages[0]);//0
System.out.println(ages[1]);//0
System.out.println(ages[2]);//0
ages[0] = 12;
ages[1] =18;
ages[2] = 32;
System.out.println(ages[0]);
System.out.println(ages[1]);
System.out.println(ages[2]);
元素默认类型
byte short int char long 类型数组的元素默认值都是0
char[] chars = new char[3];
System.out.println((int) chars[0]);
System.out.println((int) chars[1]);
浮点型 float double 类型数组的元素默认值都是0.0
double[] scores = new double[80];
System.out.println(scores[0]);
System.out.println(score[79]);
boolean 类型数组的元素默认值都为flase
boolean[] flags = new boolean[100];
System.out.println(flags[0]);
System.out.println(flags[99]);
String类型数组的元素默认值都为null
String[] name = new String[80];
System.out.println(name[0]);
System.out.println(name[79]);
完成对数组的元素的求和
//1,定义一个数组储存5名员工的销售额
int[] money = {16,26,36,6,100};
// 0 1 2 3 4
//3,定义一个变量用于累加求和
int sum = 0;
//2,遍历这个数组中的每个数据
for(int i = 0; i<money.length; i++){
sum += money[i];
}
System.out.println("员工的销售总额是"+sum);
完成评委打分的案例
import java.until.Scanner;
public Test{
public static void main(System.in){
//1,定义一个动态初始化数组,负责后期储存六个评委的打分
double[] scores = new double[6];
Scanner sc = new Scanner(System.in);
//2,遍历数组中的每个位置,每次提示用户录入一个评委的分数,并存入到数组对应的位置
for(int i = 0;i<scores.length;i++){
System.out.println("请输入第"+(i+1)+"评委的分数:");
double score = sc.nextDouble();
scores[i]=score;
}
//3,遍历数组中的每个元素进行求和
double sum = 0;
for(int i =0;i<scores.length;i++){
sum+=scores[i];
}
System.out.println("选手的最终得分是"+ sum/scores.length);
}
}
掌握数组元素求最值
public Test{
public static void main(System.in){
//1,把颜值数据拿到程序中来,用数组装起来
int[] faceScores = {15,9000,10000,20000,9500,-5};
//2,定义一个变量用于记住最大值
int max = faceScores[0];
//3,从数组的第二个位置开始遍历
for(int i = 1;i<faceScores.length;i++){
if(faceScores[i]>max){
max = faceScores[i];
}
}
System.out.println("最高颜值是:"+max);
}
}