[Java] 教师类-按编号排序 →→→→→进入此内容的聊天室

来自 , 2019-05-28, 写在 Java, 查看 110 次.
URL http://www.code666.cn/view/fc6709bf
  1. import java.util.Arrays;
  2. import java.util.Scanner;
  3. public class Main{
  4.     public static void main(String[] args) {
  5.          Scanner scan = new Scanner(System.in);
  6.          int i;
  7.          int n = scan.nextInt();
  8.          Teacher [] t = new Teacher[n];
  9.          TeacherManagement tm = new TeacherManagement(n);
  10.          for(i = 0; i < n; i++) {
  11.                  int no = scan.nextInt();
  12.              String name = scan.next();
  13.              int age = scan.nextInt();
  14.              String seminary = scan.next();
  15.              t[i] = new Teacher(no, name, age, seminary);
  16.              tm.add(t[i]);
  17.          }
  18.          Arrays.sort(t);
  19.          for(i = 0; i < n; i++) {
  20.              System.out.println("no: " +t[i].getNo() +", name: " +t[i].getName() +", age: " +t[i].getAge() +", seminary: " +t[i].getSeminary());
  21.          }
  22.          String name = scan.next();
  23.          int age = scan.nextInt();
  24.          tm.search(name);
  25.          tm.search(age);
  26.          
  27.          scan.close();  
  28.     }
  29. }  
  30.  
  31. class Teacher implements Comparable{
  32.         public int no;
  33.         public String name;
  34.         public int age;
  35.     public String seminary;
  36.         public Teacher(int _no, String _name, int _age, String _seminary) {
  37.                 no = _no;
  38.                 name = _name;
  39.                 age = _age;
  40.                 seminary = _seminary;
  41.         }
  42.         public int getNo() {
  43.                 return no;
  44.         }
  45.         public String getName() {
  46.                 return name;
  47.         }
  48.         public int getAge() {
  49.                 return age;
  50.         }
  51.         public String getSeminary() {
  52.                 return seminary;
  53.         }
  54.         public String equals(Teacher t) {
  55.                 if(this.no == t.getNo()) {
  56.                         return "true";
  57.                 }
  58.                 else
  59.                         return "false";
  60.         }
  61.         public String toString() {
  62.                 return "no: " +no +", name: " +name +", age: " +age +", seminary: " +seminary;
  63.         }
  64.         @Override
  65.         public int compareTo(Object o) {
  66.                 if(this.no > ((Teacher)o).no) {
  67.                         return 1;
  68.                 }
  69.                 else if(this.no < ((Teacher)o).no) {
  70.                         return -1;
  71.                 }
  72.                 else
  73.                         return 0;
  74.         }
  75. }
  76.  
  77. class TeacherManagement{
  78.         private int n;
  79.         private static int i = 0;
  80.         Teacher [] t;
  81.         public TeacherManagement(int num) {
  82.                 n = num;
  83.                 t = new Teacher[n];
  84.         }
  85.         public void add(Teacher teacher) {
  86.                 t[i] = teacher;
  87.                 i++;
  88.         }
  89.         public void search(String name) {
  90.                 System.out.println("search by name:");
  91.                 int flag = 0;
  92.                 for(int i = 0; i < n; i++) {
  93.                         if(t[i].getName().equals(name)) {
  94.                                 flag = 1;
  95.                                 System.out.println("no: " +t[i].getNo() +", name: " +t[i].getName() +", age: " +t[i].getAge() +", seminary: " +t[i].getSeminary());
  96.                         }
  97.                 }
  98.                 if(flag == 0) {
  99.                         System.out.println("no such teacher");
  100.                 }
  101.         }
  102.         public void search(int age) {
  103.                 System.out.println("search by age:");
  104.                 int flag = 0;
  105.                 for(int i = 0; i < n; i++) {
  106.                         if(t[i].getAge() == age) {
  107.                                 flag = 1;
  108.                                 System.out.println("no: " +t[i].getNo() +", name: " +t[i].getName() +", age: " +t[i].getAge() +", seminary: " +t[i].getSeminary());
  109.                         }
  110.                 }
  111.                 if(flag == 0) {
  112.                         System.out.println("no such teacher");
  113.                 }
  114.         }
  115. }

回复 "教师类-按编号排序"

这儿你可以回复上面这条便签

captcha