数据范例 数组名 [ ]; 或 数据范例 [ ] 数组名;
比方 :int score[ ]; 或 int [ ] score;
语法剖析:
1.数组是什么数据的范例,数组元素就是就是什么数据范例。
2.数组的特性是 [ ]。
3.数组是引用范例。
界说数组本质就是想JVM申请内存,JVM将内存分为方法区、堆、栈三部分,差别部分存储差别范例数据。界说数组时,JVM将数组名称存储在栈中,栈是一个先辈后出的数据布局。数组内容则是存储在堆中的数组元素的首地点(用首地点代表存放数组元素的整块地点)。
(2)为数组元素分配内存
声明数组时仅指定了数组名称和元素的范例,并没有指定命组个数,也没有为数组元素分配内存,以是无法使用数组存储元素。想要体系为数组元素分配存储空间,就必须指出数组元素个数,并通过new运算符为数组元素分配空间。(通过new运算符分配的元素都存储在堆中)
为数组元素分配内存空间语法格式:
数组名 = new 数据范例[数组长度];
比方:score = new int [5](score 数组中有int 型的5个数据)
注:(1)和(2)归并在一起写: int []score = new int [5]; 此时数组长度已定为 5,永不可改。
(3)数组元素初始化
数组声明并为数组元素分配空间后,必须为数组元素初始化(赋值)后才能使用数组。假如没有为数组初始化,数组元素也有默认值如下表:
一样寻常通过数组下标为数组元素初始化。
比方:
score[0][=60;
score[1]=70; ......
score[4]=90;
注:(1)、(2)、(3)也可以合在一起写: int [ ]score = new int[ ]{60,54,63,25}; 或 int score[ ] = new int[ ]{60,54,63,25}; 或 int [ ]score ={60,54,63,25}; 特殊留意在这三个方式中[]内里皆不可再写长度。
(4)使用数组:
一样寻常使用数组求最大值,最小值,匀称值,求和以及排序和查找等。
比方:创建一个结果的数据,统计最大值,最小值,匀称值,求和。
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int []score = new int[5];
//结果初始化
for (int i = 0; i < score.length; i++) {
System.out.println("请输入第"+(i+1)+"个弟子的结果");
score= s.nextInt();
}
//求最高分,求最低分
int max = score[0];
int min = score[0];
for (int i = 1; i < score.length; i++) {
if(max<score){
max = score;
}
if(min>score){
min = score;
}
}
System.out.println("最高分为"+max);
System.out.println("最低分为"+min);
//总分
int sum = 0;
for (int i = 0; i < score.length; i++) {
sum += score;
}
System.out.println("班级总分:"+sum);
System.out.println("班级匀称分"+sum/score.length);
}
排序中常用冒泡、选择、插入排序等。
冒泡排序: