首页 > 其他 > 详细

Comparable和Comparator

时间:2016-03-08 23:38:04      阅读:205      评论:0      收藏:0      [点我收藏+]

Comparable<T>

Comparable 定义在 Person类的内部:

public class Person implements Comparable<Person> {
@Override
public int compareTo(Person o) { // 返回负整数、 0、正整数表示小于、大于、等于 return 0; } }

Collections.sort(PersonList)可以对PersonList进行排序。

String 实现了Comparable接口,compareTo方法依次比较两个字符串ASC码。如果两个字符的ASC码相等则继续后续比较,否则直接返回两个ASC的差值。

Comparator<T>

Comparator 是定义在Person的外部的, Person类的结构不需要有任何变化

public class PersonComparator implements Comparator<Person> {

    @Override
    public int compare(Person o1, Person o2) {
        // 返回负整数、 0、正整数表示小于、大于、等于
        return 0;
    }
}


Collections.sort( personList , new PersonComparator() )可以对PersonList进行排序。

Comparable和Comparator

原文:http://www.cnblogs.com/lovgge/p/5256274.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!