Guava 通过其出色的Ordering类提供了此功能。An
Ordering是
Comparator++。在这种情况下,如果你具有实现的某种类型的列表
Comparable,则可以编写:
boolean sorted = Ordering.natural().isOrdered(list);
这适用于任何
Iterable,而不仅仅是
List,你可以
null通过指定s应该在其他任何非
null元素之前还是之后轻松地处理s :
Ordering.natural().nullsLast().isOrdered(list);
另外,由于你提到你希望能够检查颠倒顺序和正常顺序,因此可以这样做:
Ordering.natural().reverse().isOrdered(list);
Java 8用户:请改用等效的Java语言
Comparators#isInOrder(Iterable),因为其余的Ordering大多已过时(如类文档中所述)。



