概述
"当一个类实现类Comparable接口,此类就可以跟很多泛型算法(generic algorithm) 以及依赖于该接口
的集合实现(Collection implementation)进行协作"
比如:字母排序,按数字排序,年代排序等等某种**定制排序**
Comparable接口
public interface Comparable{
int compareTo(T t);
}
int compareTo(T t)方法说明
定义:比较此对象与指定对象的顺序。
返回:负整数、零或正整数。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。
升序/降序
int result=obj1.compareTo(obj2);
假如result返回1。Collections.sort(List)方法就是升序;
假如result返回-1。Collections.sort(List)方法就是降序;
代码示例:
第一种:
对多个关键域,顺序比较
package com.sta;
public class Student implements Comparable {
private int age;
private float height;
private String name;
......
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * res