Day11_56_在SortedSet中使用泛型
阅读原文时间:2023年07月09日阅读:2

在SortedSet中使用泛型

    import java.util.SortedSet;
    import java.util.TreeSet;
 //主类
    public class GenericTest04 {
        public static void main(String[] args) {

            //创建SortedSet集合 在SortedSet集合中使用泛型
            SortedSet<Manager> managers=new TreeSet<Manager>();

            //创建Manager对象
            Manager manager1=new Manager("Morty",16500);
            Manager manager2=new Manager("Rick", 56500);
            Manager manager3=new Manager("ShiGe",18500);
            Manager manager4=new Manager("Mike", 12500);
            Manager manager5=new Manager("ZhanSi",16200);

            //向集合中添加数据
            managers.add(manager1);
            managers.add(manager2);
            managers.add(manager3);
            managers.add(manager4);
            managers.add(manager5);

            //遍历集合
            for(Manager manager:managers){
                System.out.println(manager);
                manager.work();
            }

        }
    }

 //经理类
    class Manager implements Comparable<Manager>{     //在Comparable接口上用泛型,就不用强制类型转换了
        //属性
        String name;
        double salary;

        //构造方法
        Manager(String name,double salary){
            this.name=name;
            this.salary=salary;

        }

        //方法
        public void work(){
            System.out.println("经理"+name+"在工作,一个月"+salary+"元");
        }

        //重写toString方法
        public String toString(){
            return "Manager[姓名:"+name+" 薪水:"+salary+"]";
        }

        //实现 compareTo() 方法
        @Override
        public int compareTo(Manager o) {

              double sal=o.salary;  //不用强制类型转换了
                if(this.salary==sal){
                    return 0;
                }else if(this.salary<sal){
                    return 1;

                }else{
                    return -1;
                }
            }
        }