List of usage examples for org.apache.commons.collections4 ComparatorUtils nullLowComparator
@SuppressWarnings("unchecked") public static <E> Comparator<E> nullLowComparator(Comparator<E> comparator)
null
values. From source file:com.feilong.core.util.MapUtilTest.java
/** * TestMapUtilTest.//from w w w . jav a 2 s. c o m */ @Test public void testMapUtilTest1() { Comparator<String> naturalComparator = ComparatorUtils.naturalComparator(); Comparator<String> nullLowComparator = ComparatorUtils.nullLowComparator(naturalComparator); Map<String, String> map = new TreeMap<String, String>(nullLowComparator); map.put(null, "111"); assertThat(map, hasEntry(null, "111")); }
From source file:com.caocao.util.CollectionUtils.java
/** * ??sortTheList ??List?//from ww w . j a v a 2s . c om * * @param list * @param sortFields * @param sortOrder */ public static void sortTheList(List list, String[] sortFields, String sortOrder) { if (sortFields == null || sortFields.length <= 0) { return; } ArrayList sorts = new ArrayList(); Comparator c = ComparatorUtils.NATURAL_COMPARATOR; c = ComparatorUtils.nullLowComparator(c); // ?null if (StringUtils.isEquals(sortOrder, CollectionUtils.SORT_ORDER_DESC)) { c = ComparatorUtils.reversedComparator(c); // ? } String sortField = null; for (int i = 0; i < sortFields.length; i++) { sortField = sortFields[i]; if (StringUtils.isNotEmpty(sortField)) { sorts.add(new BeanComparator(sortField, c)); } } ComparatorChain multiSort = new ComparatorChain(sorts); Collections.sort(list, multiSort); }