Commons Collections 排序

[b][size=medium][color=darkred]Comparator组:[/color][/size][/b]
[quote]ReverseComparator
ComparatorChain
NullComparator
FixedOrderComparator
ComparatorUtils
[/quote]
[b]Commons Collections[/b]扩展了java.util.Comparator接口.

这个[b]java.util.Comparator[/b]接口定义如下核心方法:

public int compare(Object arg0, Object arg1)

传给它两个对象,它要告诉我们这两个对象哪一个在特定的语义下更“大”,或者两者相等。如果arg0 > arg1,返回大于0的整数;如果arg0 = arg1,返回0;如果arg0 < arg2,返回小于0的整数。

看看[b]Commons Collections[/b](在org.apache.commons.collections.comparators包下面)提供了哪些Comparator的实现类:
[quote][b]BooleanComparator[/b] – 用于排序一组Boolean对象,指明先true还是先false;
[b]ComparableComparator[/b] – 用于排序实现了java.lang.Comparable接口的对象(我们常用的Java类如String、Integer、Date、Double、File、Character等等都实现了Comparable接口);
[b]ComparatorChain[/b] – 定义一组Comparator链,链中的Comparator对象会被依次执行;
[b]FixedOrderComparator[/b] – 用于定义一个特殊的顺序,对一组对象按照这样的自定义顺序进行排序;
[b]NullComparator[/b] – 让null值也可参与比较,可以设定为先null或者后null;
[b]ReverseComparator[/b] – 将原有的Comparator效果反转;
[b]TransformingComparator[/b] – 将一个Comparator装饰为具有Transformer效果的Comparator。
[/quote]

以上除了[b]ComparatorChain[/b]之外,似乎都是实现一些很基本的比较方法,但是当用[b]ComparatorChain[/b]将一组Comparator串起来之后,就可以实现非常灵活的比较操作。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值