특정 함수나 동작을 나타내기 위해 사용했던 함수 객체 - 낡은 기법

Collections.sort(words, new Comparator<String>() {
    public int compare(String s1, String s2) {
        return Integer.compare(s1.length(), s2.length());
    }
});

람다식

Collections.sort(words, (s1, s2) -> Integer.compare(s1.length(), s2.length()));

비교자 생성 메서드

Collections.sort(words, comparingInt(String::length));

List 인터페이스의 sort 사용하기

words.sort(comparingInt(String::length));

람다 사용 예시