We would like to know how to create comparator created by inner class and Lambda variable.
import java.util.ArrayList; import java.util.List; import java.util.Comparator; // w w w . j a va 2 s.co m public class Main { public static void main(String[] args) { // setup List<Integer> list = new ArrayList<Integer>(); list.add(4); list.add(3); // classic way list.sort(new Comparator<Integer>() { @Override public int compare(Integer a, Integer b) { return a - b; } }); System.out.println(list); // lambda way Comparator<Integer> lambdaComparator = (Integer a, Integer b) -> b - a; list.sort(lambdaComparator); System.out.println(list); } }
The code above generates the following result.