小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

java.util.Comparator使用示例

 WindySky 2008-09-28
Comparator的具體實現(xiàn)類
public class AgeComparator implements Comparator {
  
public int compare(Object op1, Object op2) {
    Employee eOp1 
= (Employee) op1;
    Employee eOp2 
= (Employee) op2;

    
// 按年齡排序
    return eOp1.getAge()-(eOp2.getAge());
  }

}


public class NameComparator implements Comparator {
  
public int compare(Object op1, Object op2) {
    Employee eOp1 
= (Employee) op1;
    Employee eOp2 
= (Employee) op2;

    
// 按姓名排序
    return eOp1.getName().compareTo(eOp2.getName());
  }

}


public class SalaryComparator implements Comparator {
  
public int compare(Object op1, Object op2) {
    Employee eOp1 
= (Employee) op1;
    Employee eOp2 
= (Employee) op2;

    
// 按薪水排序
    return eOp1.getSalary()-(eOp2.getSalary());
  }

}


Employee類:

public class Employee{
  
protected String name;
  
protected int age;
  
protected int salary;
  
  
public Employee(String name,int age,int salary){
    
this.name=name;
    
this.age=age;
    
this.salary=salary;
  }

  
  
public int getAge() {
    
return age;
  }

  
public void setAge(int age) {
    
this.age = age;
  }

  
public String getName() {
    
return name;
  }

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

  
public int getSalary() {
    
return salary;
  }

  
public void setSalary(int salary) {
    
this.salary = salary;
  }
 
}


測試:
public class Main{
  
public static void main(String[] args){
    List
<Employee> employees=new ArrayList<Employee>();
    
    employees.add(
new Employee("Andy",21,2000));
    employees.add(
new Employee("Felix",21,3000));
    employees.add(
new Employee("Bill",35,20000));
    employees.add(
new Employee("Helen",21,10000));
    employees.add(
new Employee("Cindy",28,8000));
    employees.add(
new Employee("Douglas",25,5000));
        
    
// 按名稱排序
      Collections.sort(employees,new NameComparator());
      display(employees);

      
// 按年齡排序
      Collections.sort(employees,new AgeComparator());
      display(employees);
      
      
// 按薪水排序
      Collections.sort(employees,new SalaryComparator());
      display(employees);
  }

  
  
public static void display(List<Employee> employees){
    
for(Employee e:employees){
      System.out.println(
"雇員名="+e.getName()+" 年齡="+e.age+" 薪水="+e.getSalary());
    }

    
    System.out.println();
  }

}


輸出:
雇員名=Andy 年齡=21 薪水=2000
雇員名
=Bill 年齡=35 薪水=20000
雇員名
=Cindy 年齡=28 薪水=8000
雇員名
=Douglas 年齡=25 薪水=5000
雇員名
=Felix 年齡=21 薪水=3000
雇員名
=Helen 年齡=21 薪水=10000

雇員名
=Andy 年齡=21 薪水=2000
雇員名
=Felix 年齡=21 薪水=3000
雇員名
=Helen 年齡=21 薪水=10000
雇員名
=Douglas 年齡=25 薪水=5000
雇員名
=Cindy 年齡=28 薪水=8000
雇員名
=Bill 年齡=35 薪水=20000

雇員名
=Andy 年齡=21 薪水=2000
雇員名
=Felix 年齡=21 薪水=3000
雇員名
=Douglas 年齡=25 薪水=5000
雇員名
=Cindy 年齡=28 薪水=8000
雇員名
=Helen 年齡=21 薪水=10000
雇員名
=Bill 年齡=35 薪水=20000

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多