Skip to content

Commit 8c81ec9

Browse files
author
Eugen Paraschiv
committed
guava examples for ordering
1 parent 83f2c36 commit 8c81ec9

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

guava/src/test/java/org/baeldung/guava/collections/GuavaOrderingExamplesTest.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.baeldung.guava.collections;
22

3+
import static org.hamcrest.Matchers.equalTo;
34
import static org.hamcrest.Matchers.nullValue;
45
import static org.junit.Assert.assertThat;
56

@@ -10,6 +11,7 @@
1011
import org.junit.Test;
1112

1213
import com.google.common.collect.Ordering;
14+
import com.google.common.primitives.Ints;
1315

1416
public class GuavaOrderingExamplesTest {
1517

@@ -35,4 +37,20 @@ public final void whenCollectionIsSortedNullsLastReversed_thenNullAreFirst() {
3537
Collections.sort(nums, Ordering.natural().nullsLast().reverse());
3638
assertThat(nums.get(0), nullValue());
3739
}
40+
41+
@Test
42+
public final void whenSortingCollectionsOfStringsByLenght_thenCorrectlySorted() {
43+
final List<String> toSort = Arrays.asList("aa", "b", null, "ccc");
44+
final Ordering<String> byLength = new Ordering<String>() {
45+
@Override
46+
public int compare(final String s1, final String s2) {
47+
return Ints.compare(s1.length(), s2.length());
48+
}
49+
};
50+
51+
Collections.sort(toSort, byLength.nullsFirst());
52+
assertThat(toSort.get(0), nullValue());
53+
assertThat(toSort.get(1), equalTo("b"));
54+
}
55+
3856
}

0 commit comments

Comments
 (0)