List<String> list = Arrays.asList("abc", "aaa", "ddd", "aaa);
Collections.sort(list, new Comparator<String> (){
public int compare(String s1, String s2) {
return s2.compareTo(s1);
}
});
List<String> list = Arrays.asList("abc", "aaa", "ddd", "aaa);
Collections.sort(list, (s1, s2) -> s2.compareTo(s1));
sort함수는 sort(List list, Comparator c) 이렇게 되어있다. Comparator 가 @FunctinalInterface로 되어있으므로, 람다가 들어가도 되는 것이다.
@FunctionalInterface
interface MyFunction {
void myMethod();
}
void aMethod(MyFunction f) {
f.myMethod() // MyFuntion에 정의된 메서드 호출
}
aMethod(()->System.out.println("hello"));
MyFunction myMethod(){
MyFunction f = ()->{};
return f;