数组的概念:在内存中使用连续空间,存储相同数据类型的模型。
1.定义数组的语法(声明数组):1.数据类型[] 数组名;
int[] scores;
double[] height;
String[] names;
2.数据据类型 数组名[];(不推荐,属于C语言家族)
2.分配空间:1.数组名 = new 数据类型[数据长度];
scores = new int[30];
height = new double[30];
name = new String[30];
2.数据类型[] 数组名 = new 数据类型[数据长度];
int scores[] = new int[30];
3.赋值:1.数组名 [下标值];
scores[0] = 89;
scores[1] = 60;
scores[2] =70;
2.数组类型[] 数组名 = {值1,值2,值3......值n};
int[] scores ={60,70,98,90,76};
4.对数据进行处理
public class ArrayDemo{
public static void main(String[] args){
//1.定义数组:数据类型[] 数组名
// 定义一个整型数组
int[] arr;
// 定义一个小数字符串
double[] arr1
// 定义一个字符串数组
String[] arr2;
// 定义一个boolean类型的数组
boolean[] flags;
//2.数组的初始化
//静态初始化(不能换行)
int[] array = {10,6,7,12,32,43}; //数组类型[] 数组名 = {值1,值2,值3......值n};
System.out.println("数组的元素为:"+Arrays.toString(array));
//动态初始化
//第一种:
int[] ar = new int[]{12,34,56,78,21}//数据类型[] 数组名 = new 数据类型[数据长度];
//或(可以换行)
int[] ar;
ar = new int[]{12,34,56,78,21}
//第二种:
int[] ar1 = new int[5];
System.out.println("数组的元素为:"+Arrays.toString(ar1));
boolean[] ar2 = new boolean[5];
System.out.println("数组的元素为:"+Arrays.toString(ar2));
//3.数组元素的访问
ar = new int[]{12,34,56,78,21}
//ar:首地址+偏移地址=目标地址
System.out.println("第一个元素为:"+ar[0]);
System.out.println("第二个元素为:"+ar[1]);
System.out.println("第三个元素为:"+ar[2]);
System.out.println("第四个元素为:"+ar[3]);
System.out.println("第五个元素为:"+ar[4]);
//4.数组中有多少个元素ar.length数组的长度
System.out.println("第一个元素为:"+ar.lenfth)
//5.数组的遍历
//正向遍历
for(int index = 0; index < ar.length; index++){
int data = ar[index];
System.out.println("下标为"+index+"个元素为:"+data);
}
//反向遍历
for(int index = ar.length-1; index >= 0; index--){
int data = ar[index];
System.out.println("下标为"+index+"个元素为:"+data);
}
}
}
例一:
import Java.util.Scanner;
public class ArrayDemo{
public static void main(String[] args){
//数据类型[] 数组名 = new 数据类型[数据长度];
int[] scores = new int[5]; //成绩数组
int sum = 0; //成绩总和
Scanner input = new Scanner(System.in);
System.out.println("请输入五位学生的成绩:");
for(int i = 0; i < scores.length; i++){
score[i] = input.nextInt();
sum = sum + scores[i];
}
//计算并输出平均分
System.out.println("学生的平均成绩是:"+(double)sum/scores.length);
}
}



