集合练习题1
題目:
1、假設1701班有40個學生,學號為170101~170140,全部參加語文、數學、英語三門考試,給出所有同學的各科成績(成績為整數、隨機產生,范圍為 [50,100]),并求出每位同學的總成績。請編寫程序將1701班各位同學的總成績從高到低排序,并使用IO流的知識的把成績寫入到D:\StudentScore.txt文件中。
注:成績相同時學號較小的先打印;要求:
① 打印的信息包含學號、姓名(姓名統一為“同學 X”[X=01,02,03,…]和學號后兩位一致)和成績,具體格式參考下面截圖。
② 遍歷數組時使用迭代器
效果圖
這個時候運行用的代碼
這個是調用的代碼塊
package com.demo;public class StudentPersonDemo implements Comparable<StudentPersonDemo>{//靜態變量private int StudentNumber;//學號private String Name;//名字private int language;//語文private int math;//數學private int English;//英語private int TotalPoints;//總成績 //無參構造器public StudentPersonDemo(){}//有參構造器public StudentPersonDemo(int studentNumber, String name, int language,int math, int english, int totalPoints) {super();StudentNumber = studentNumber;Name = name;this.language = language;this.math = math;English = english;TotalPoints = totalPoints;}public int getStudentNumber() {return StudentNumber;}public void setStudentNumber(int studentNumber) {StudentNumber = studentNumber;}public String getName() {return Name;}public void setName(String name) {Name = name;}public int getLanguage() {return language;}public void setLanguage(int language) {this.language = language;}public int getMath() {return math;}public void setMath(int math) {this.math = math;}public int getEnglish() {return English;}public void setEnglish(int english) {English = english;}public int getTotalPoints() {return TotalPoints;}public void setTotalPoints(int totalPoints) {TotalPoints = totalPoints;}//重寫排序方法@Overridepublic int compareTo(StudentPersonDemo o) {//要是判斷一項的話,就不用判斷了。當判斷一項無法,按照你的思想排序,就可以多判斷一下// 從小到大 :this‐o // 從大到小:o‐this // return this.age ‐ o.age;if (this.TotalPoints!=o.TotalPoints) {return o.TotalPoints- this.TotalPoints ;}else{return this.StudentNumber-o.StudentNumber ;}}}總結
- 上一篇: 互联网金融大战黑客
- 下一篇: 软件设计师教程,需要的自取啊!