java实现Comparable接口问题

package com.rae;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.TreeSet;
import java.util.Iterator;

public class Student implements Comparable<Student> {
        private int id;
        private String name;

        public Student (int id, String name) {
                this.id = id;
                this.name = name;
        }

        public void setId (int id) {
                this.id = id;
        }

        public void setName (String name) {
                this.name = name;
        }

        public int getId () {
                return id;
        }

        public String getName () {
                return name;
        }

        public String toString () {
                return (id + "\t" + name);
        }

        public int compareTo (Student arg) {
                return id - arg.id;
        }

       
        public static void main (String args[]) {
                TreeSet<Student> tset = new TreeSet<Student>();
                tset.add(new Student(5, "Tom"));
                tset.add(new Student(3, "John"));
                tset.add(new Student(9, "David"));
                tset.add(new Student(7, "Alice"));
                List<Student> list = new ArrayList<Student>();
                list.add(new Student(5, "Tom"));
                list.add(new Student(3, "John"));
                list.add(new Student(9, "David"));
                list.add(new Student(7, "Alice"));
                Iterator<Student> itor = tset.iterator();
                while (itor.hasNext()) {
                        System.out.println(itor.next().toString());
                }
                Collections.sort(list);
                itor = list.iterator();
                while(itor.hasNext()){
                	System.out.println(itor.next().toString());
                }
        }
}





   

你可能感兴趣的:(java实现Comparable接口问题)