外部比较器

外部比较器
  1. 创建属性,比较方法;这里用到泛化

            package com.DemoTest1;
    
            import com.Collection.Compare;
    
            import java.util.Comparator;
    
            public class Test02 {
                private String name;
                private int age;
                private double hight;
    
                public Test02(String name, int age, double hight) {
                    this.name = name;
                    this.age = age;
                    this.hight = hight;
                }
    
                public String getName() {
                    return name;
                }
    
                public void setName(String name) {
                    this.name = name;
                }
    
                public int getAge() {
                    return age;
                }
    
                public void setAge(int age) {
                    this.age = age;
                }
    
                public double getHight() {
                    return hight;
                }
    
                public void setHight(double hight) {
                    this.hight = hight;
                }
    
                @Override
                public String toString() {
                    return "Test02{" +
                            "name='" + name + '\'' +
                            ", age=" + age +
                            ", hight=" + hight +
                            '}';
                }
    
            }
    
            class Test03 extends Compare implements Comparator<Test02> {
    
    
                @Override
                public int compare(Test02 o1, Test02 o2) {
                    return o1.getAge()-o2.getAge();
                }
                public int compare02(Test02 o1, Test02 o2) {
                    return ((Double)o1.getHight()).compareTo((Double)o2.getHight());
                }
            }
    
    
  2. 对比较器Compare 进行调用

  3.         package com.DemoTest1;
    
            public class Test01 {
                public static void main(String[] args) {
                    Test02 test02 =new Test02("白白",21,168.2);
                    Test02 test021 =new Test02("红花",25,180.2);
                    Test03 test022 = new Test03();
                    System.out.println(test022.compare(test02, test021));
                    System.out.println(test022.compare02(test02, test021));
                }
            }
    
    
posted @ 2022-04-14 20:47  爱豆技术部  阅读(59)  评论(0)    收藏  举报