问题:设计一个管理所有学生信息(有学号、姓名、成绩)的类,要求使用映射类存储所有学生的信息,存储时根据学号进行排序,并提供以下功能:添加学生、按学号删除学生,按姓名查找学生,查找所有学生。要求有测试类,能进行演示,输出所有学生信息时按学号依次打印。
   
    
     
      package
     
    
    ja;
   
    
     
      import
     
    
    java.text.DecimalFormat;
   
    
     
      import
     
    
    java.util.ArrayList;
   
    
     
      import
     
    
    java.util.List;
   
    
     
      import
     
    
    java.util.Map;
   
    
     
      import
     
    
    java.util.Set;
   
    
     
      import
     
    
    java.util.TreeMap;
   
    
     
      public
     
    
    
     
      class
     
    
    Sy5__1 {
    
   
    
     
      static
     
    
    
     
      class
     
    
    StudentManager {
    
   
    
     
      private
     
    
    Map<String, Student> map;
   
    
     
      public
     
    
    StudentManager() {
    
   
    map =
    
     
      new
     
    
    TreeMap<String, Student>();
   
}
    // public StudentManager(TreeMap<String, Student> map) {
    
   
// this.map = map;
// }
    
     
      public
     
    
    
     
      void
     
    
    add(Student s) {// 添加
   
map.put(s.getId(), s);
}
    
     
      public
     
    
    
     
      void
     
    
    del(String id) {// 删除
   
map.remove(id);
}
    
     
      public
     
    
    List<Student> find(String name) {// 按姓名查找
   
    List<Student> list =
    
     
      new
     
    
    ArrayList<Student>();
   
Set<String> keySet = map.keySet();
    
     
      for
     
    
    (String key : keySet) {
    
   
Student values = map.get(key);
    
     
      if
     
    
    (values.equals(name))
   
list.add(values);
}
    
     
      return
     
    
    list;
   
}
    
     
      public
     
    
    List<Student> find() {// 查找所有
   
    List<Student> list =
    
     
      new
     
    
    ArrayList<Student>();
   
Set<String> keySet = map.keySet();
    
     
      for
     
    
    (String key : keySet) {
    
   
Student values = map.get(key);
list.add(values);
;
}
    
     
      return
     
    
    list;
   
}
    
     
      public
     
    
    Map<String, Student> getMap() {
    
   
    
     
      return
     
    
    map;
   
}
    
     
      public
     
    
    
     
      void
     
    
    show(List<Student> stus) {// 打印
   
    
     
      int
     
    
    i = 1;
   
    
     
      for
     
    
    (Student s : stus) {
    
   
    System.
    
     
      
       
        out
       
      
     
    
    .println(i++ + “:” + s.toString());
   
}
    System.
    
     
      
       
        out
       
      
     
    
    .println(” ———————–“);
   
}
}
    
     
      public
     
    
    
     
      static
     
    
    
     
      void
     
    
    main(String[] args) {
    
   
    //
    
     
      TODO
     
    
    自动生成的方法存根
   
    StudentManager sm =
    
     
      new
     
    
    StudentManager();
   
    
     
      for
     
    
    (
    
     
      int
     
    
    i = 1; i <= 10; i++) {
    
   
    DecimalFormat df =
    
     
      new
     
    
    DecimalFormat(“0000”);
   
String name = df.format(i);// 把数字1格式化成0001
    sm.add(
    
     
      new
     
    
    Student(i + “”, name, i));// 增”
   
}
List<Student> stus = sm.find();
    
     
      if
     
    
    (stus !=
    
     
      null
     
    
    )
   
    
     
      for
     
    
    (Student s : stus) {
    
   
    System.
    
     
      
       
        out
       
      
     
    
    .println(s.toString());
   
}
}
    
     
      static
     
    
    
     
      class
     
    
    Student {
    
   
    
     
      private
     
    
    String id;
   
    
     
      private
     
    
    String name;
   
    
     
      private
     
    
    
     
      double
     
    
    score;
   
    
     
      public
     
    
    Student(String id, String name,
    
     
      double
     
    
    score) {
    
   
    
     
      this
     
    
    .id = id;
   
    
     
      this
     
    
    .name = name;
   
    
     
      this
     
    
    .score = score;
   
}
    
     
      public
     
    
    String getId() {
    
   
    
     
      return
     
    
    id;
   
}
    
     
      public
     
    
    
     
      void
     
    
    setId(String id) {
    
   
    
     
      this
     
    
    .id = id;
   
}
    
     
      public
     
    
    String getName() {
    
   
    
     
      return
     
    
    name;
   
}
    
     
      public
     
    
    
     
      void
     
    
    setName(String name) {
    
   
    
     
      this
     
    
    .name = name;
   
}
    
     
      public
     
    
    
     
      double
     
    
    getScore() {
    
   
    
     
      return
     
    
    score;
   
}
    
     
      public
     
    
    
     
      void
     
    
    setScore(
    
     
      double
     
    
    score) {
    
   
    
     
      this
     
    
    .score = score;
   
}
    
     
      public
     
    
    String toString() {
    
   
    
     
      return
     
    
    “student [id=” + id + “, name=” + name + “, score=” + score + “]”;
   
}
}
}
 
