Comparator
instances defined as lambda expressions that could be expressed using
Comparator.comparing()
calls.
Chained comparisons which can be replaced by Comparator.thenComparing()
expression are also reported.
Example:
myList.sort((person1, person2) -> person1.getName().compareTo(person2.getName()));
myList2.sort((person1, person2) -> {
int res = person1.first().compareTo(person2.first());
if(res == 0) res = person1.second().compareTo(person2.second());
if(res == 0) res = person1.third() - person2.third();
return res;
});
After the quick-fixes are applied:
myList.sort(Comparator.comparing(Person::getName));
myList2.sort(Comparator.comparing(Person::first)
.thenComparing(Person::second)
.thenComparingInt(Person::third));