JavaSE-集合-自定义排序new Comparator()

@Test
public void test02(){
    
    
    //自定义排序,根据年龄从小到大排序
    Comparator com = new Comparator() {
    
    
        @Override
        public int compare(Object o1, Object o2) {
    
    
            if(o1 instanceof Person && o2 instanceof Person){
    
    
                Person person1 = (Person) o1;
                Person person2 = (Person) o2;
                return person1.getAge().compareTo(person2.getAge());
            }else {
    
    
                throw new RuntimeException("输入的类型不匹配");
            }
        }
    };
    Set set = new TreeSet(com);
    set.add(new Person("Tom",18));
    set.add(new Person("Jack",16));
    set.add(new Person("Marry",19));
    set.add(new Person("Rose",20));
    set.add(new Person("Mike",12));
    Iterator iterator = set.iterator();
    while(iterator.hasNext()){
    
    
        System.out.println(iterator.next());
    }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_46112274/article/details/124741829
今日推荐