|
@@ -0,0 +1,98 @@
|
|
|
+package com.lovecoding.day08.oop04;
|
|
|
+
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.Random;
|
|
|
+
|
|
|
+/**
|
|
|
+ * ClassName: TestStudent
|
|
|
+ * Package: com.lovecoding.day08.oop04
|
|
|
+ * Description:
|
|
|
+ *
|
|
|
+ * @Author 爱扣钉-陈晨
|
|
|
+ * @Create 2023/6/4 14:38
|
|
|
+ * @Version 1.0
|
|
|
+ */
|
|
|
+public class TestStudent {
|
|
|
+
|
|
|
+ /*
|
|
|
+ 使用冒泡排序按学生成绩排序,并遍历所有学生信息
|
|
|
+ */
|
|
|
+ public void printStudentSortByScore(Student[] students ){
|
|
|
+ //冒泡
|
|
|
+ for (int i = 0; i < students.length; i++) {
|
|
|
+ for (int j = 0; j < students.length-i-1; j++) {
|
|
|
+ if ( students[j].score > students[j+1].score ){
|
|
|
+ //交换
|
|
|
+ Student temp = students[j];
|
|
|
+ students[j] = students[j+1];
|
|
|
+ students[j+1] = temp;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //输出信息
|
|
|
+ for (int i = 0; i < students.length; i++) {
|
|
|
+ System.out.print(" number:"+students[i].number);
|
|
|
+ System.out.print(" score:"+students[i].score);
|
|
|
+ System.out.print(" state:"+students[i].state);
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /*
|
|
|
+ 打印出3年级(state值为3)的学生信息。
|
|
|
+ */
|
|
|
+ public void printStudentByState( int state , Student[] students ){
|
|
|
+ for (int i = 0; i < students.length; i++) {
|
|
|
+ if (students[i].state == state){
|
|
|
+ System.out.print(" number:"+students[i].number);
|
|
|
+ System.out.print(" score:"+students[i].score);
|
|
|
+ System.out.print(" state:"+students[i].state);
|
|
|
+
|
|
|
+ System.out.println();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /*
|
|
|
+ 创建20个学生对象,用数组存
|
|
|
+ */
|
|
|
+ public Student[] initStudentArr( int count){
|
|
|
+ //定义数组
|
|
|
+ Student[] arr = new Student[count];
|
|
|
+
|
|
|
+ //随机填年级 和 成绩
|
|
|
+ for (int i = 0; i < arr.length; i++) {
|
|
|
+ Student student = new Student();
|
|
|
+ //随机年级
|
|
|
+ int state = new Random().nextInt(3)+1;
|
|
|
+ student.state = state;
|
|
|
+ //成绩
|
|
|
+ student.score = (int)((Math.random()*60) + 40);
|
|
|
+ //序号
|
|
|
+ student.number = (i+1);
|
|
|
+ //数组赋值
|
|
|
+ arr[i] = student;
|
|
|
+ }
|
|
|
+
|
|
|
+ //返回数组
|
|
|
+ return arr;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static void main(String[] args) {
|
|
|
+ TestStudent testStudent = new TestStudent();
|
|
|
+ //创建
|
|
|
+ Student[] students = testStudent.initStudentArr(20);
|
|
|
+
|
|
|
+ System.out.println(Arrays.toString(students));
|
|
|
+
|
|
|
+ //打印年级信息
|
|
|
+ testStudent.printStudentByState(3,students);
|
|
|
+ System.out.println("----------------");
|
|
|
+ //排序打印
|
|
|
+ testStudent.printStudentSortByScore(students);
|
|
|
+ }
|
|
|
+}
|