package com.ethjava;
import java.util.ArrayList;
import java.util.List;
//自定义的类实现排序
//方法1:类实现接口
import java.util.Collections;
class Empx implements Comparable<Empx> {
private int empno;
private String ename;
public int getEmpno() {
return empno;
}
public void setEmpno(int empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
//构造函数
public Empx(int empno, String ename) {
super();
this.empno = empno;
this.ename = ename;
}
@Override
public String toString() {
return "empno:\t" + empno + "\tename:\t" + ename;
}
public int compareTo(Empx emp) {
/*按员工编号正序排序*/
//return this.getEmpno()-emp.getEmpno();
/*按员工编号逆序排序*/
//return emp.getEmpno()-this.getEmpno();
/*按员工姓名正序排序*/
//return this.getEname().compareTo(emp.getEname());
/*按员工姓名逆序排序*/
return emp.getEname().compareTo(this.getEname());
}
}
public class Collectionlanxi2 {
public static void main(String[] args){
Empx emp1 = new Empx(2, "Yangxiaofen");
Empx emp2 = new Empx(3, "Zhangmeng");
Empx emp3 = new Empx(1, "Alex");
List<Empx> empList = new ArrayList<>();
empList.add(emp1);
empList.add(emp2);
empList.add(emp3);
System.out.println("before sort:");
System.out.println(empList);
System.out.println("=========================");
Collections.sort(empList);
System.out.println("after sort:");
System.out.println(empList);
//before sort:
//[empno: 2 ename: Yangxiaofen, empno: 3 ename: Zhangmeng, empno: 1 ename: Alex]
//after sort: [empno: 3 ename: Zhangmeng, empno: 2 ename: Yangxiaofen, empno: 1 ename: Alex]
}
}
参考:
https://www.cnblogs.com/yw0219/p/7222108.html?utm_source=itdadao&utm_medium=referral