数组格式以及常用方法和算法
数组:
格式:数据类型 + [] + 变量名 = new + 数据类型 + []{};
数组的长度固定不变,避免数组越界.
数组越界报错:
数组有哪些特点呢?
1):同类型数据
2):分配连续空间的一个变量
数组的四大步骤:
1):声明数组
2):开空间(定义数组个数)
3):赋值
4):处理应用
数组赋值的几种方法:
1):边开空间边赋值 例: int [] score = new int[]{};
2):先声明,在开空间赋值 例: int[] score;
Score = new int[]{};
3):边声明边赋值 例: int[] score = {1,3,5,7,9} //知道数据的值推荐使用此方法
4):输入法赋值 例: int [] score = new int[12];
for(int i = 0; i < score.length; i++){
System.out.println(“请输入第” + (i+1) + “个数组的值”);
Score[i] = input.NextInt();
}
数组的输出:
1.数组按升序排列:系统知道方法:Arrays.sort(数组名)
例:
2.查找数组的最大/最小值;
public class A_CeShi {
public static void main(String[] args) {
int[] score = { 10, 18, 94, 2, 56, 74, 3, 105 }; // 定义一个数组
int max = score[0];// 假如最大值为第一个数
int least = score[0];// 假如最小值为第一个数
for (int i = 0; i < score.length; i++) {
if (max < score[i]) { // 把定义的最大数跟每个数比较
max = score[i]; // 如果比最大数大则把该值赋给最大值
}
if (least > score[i]) { // 相反
least = score[i];
}
}
System.out.println("该数组的最大值为:" + max);
System.out.println("该数组的最小值为:" + least);
}
}
3.插入算法:
Scanner input = new Scanner(System.in);
int[] list = new int[6];//成绩必须有序的排列,否则循环格式不成立
list[0] = 99;
list[1] = 85;
list[2] = 82;
list[3] = 63;
list[4] = 60;
System.out.print("请输入要插入的学生的成绩:");
int num = input.nextInt(); // 定义要插入的成绩
int index = 0;// 假如位置在排名的第一个
for (int i = 0; i < list.length; i++) { // 把插入的成绩跟每个人的成绩比较
if (num > list[i]) {
index = i;
break;
}
}
for(int j = list.length - 1;j > index;j--){ //插入的成绩位置比原成绩的位置小
list[j] = list[j-1]; //则把该同学的成绩位置往后移动一位
}
list[index] = num;
System.out.print("插入后的学生排名是:");
for(int i = 0;i < list.length;i++){
System.out.print(list[i] + " ");
}
Arrays类常用方法(数组工具类):