①创建包含20个Student类对象的数组; ②使用循环输入20个学生信息存入数组,其中学号依次为1-20,班级1-3随机产生,成绩90-100随机产生; ③使用增强for循环输出学生数组的信息,其中每个学生信息调用toString()方法输出。 ④通过调用equals()方法找出与第一个学生同班的学生并输出。 ⑤调用Arrays类的sort()方法对学生数组按成绩降序排列。 ⑥使用增强for循环输出排序后的学生信息。
时间: 2024-02-11 13:08:16 浏览: 71
下面是实现以上要求的代码:
```java
import java.util.Arrays;
public class StudentTest {
public static void main(String[] args) {
Student[] students = new Student[20];
// 输入20个学生信息
for (int i = 0; i < students.length; i++) {
int sno = i + 1;
int sclass = (int) (Math.random() * 3) + 1;
int score = (int) (Math.random() * 11) + 90;
students[i] = new Student(sno, sclass, score);
}
// 输出学生数组的信息
for (Student student : students) {
System.out.println(student.toString());
}
// 找出与第一个学生同班的学生并输出
for (int i = 1; i < students.length; i++) {
if (students[i].equals(students[0])) {
System.out.println("与第一个学生同班的学生:" + students[i].toString());
}
}
// 对学生数组按成绩降序排列
Arrays.sort(students);
// 输出排序后的学生信息
System.out.println("按成绩降序排列后的学生信息:");
for (Student student : students) {
System.out.println(student.toString());
}
}
}
```
在这个代码中,我们首先创建了一个包含20个Student类对象的数组。然后,使用循环输入20个学生信息存入数组,其中学号依次为1-20,班级1-3随机产生,成绩90-100随机产生。
接着,我们使用增强for循环输出学生数组的信息,其中每个学生信息调用toString()方法输出。然后,通过调用equals()方法找出与第一个学生同班的学生并输出。
接下来,我们调用Arrays类的sort()方法对学生数组按成绩降序排列。最后,使用增强for循环输出排序后的学生信息。
阅读全文