Skip to content

Commit 3260d2f

Browse files
committed
add comparator use cases
1 parent 4968ffe commit 3260d2f

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

Algorithms/ComparatorSnippet.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,27 @@ public int getAge(){
1313
}
1414
}
1515

16+
class DevComparator implements Comparator<Developer> {
17+
@Override
18+
public int compare(Developer firstValue, Developer secondValue){
19+
return Integer.compare(firstValue.getAge(), secondValue.getAge());
20+
}
21+
}
22+
1623
public class ComparatorSnippet{
1724

1825
public static void main(String... args)throws Exception{
19-
26+
// way - 1
27+
// better if sorting criteria keeps changing
2028
Developer[] devs = Collections.sort(listDevs, new Comparator<Developer>() {
2129
@Override
2230
public int compare(Developer o1, Developer o2) {
2331
return o1.getAge() - o2.getAge();
2432
}
2533
});
34+
// way - 2
35+
devs = Collections.sort(listDevs, (Developer a , Developer b) -> Integer.compare(a.getAge(), b.getAge()));
36+
// way - 3
37+
devs = Collections.sort(listDevs, new DevComparator());
2638
}
2739
}

0 commit comments

Comments
 (0)