jdk 1.8버전에서 추가된 기능메소드를 하나의 식으로 간단하게 표현함함수형 인터페이스에서만 사용 가능함함수형 인터페이스 : 추상메소드를 하나만 갖고 있는 인터페이스(ex: Runnable)매개변수 타입 생략 가능.함수형 인터페이스 예시형식1. 메소드가 void형일때형
익명의 내부클래스람다식방법 1방법2(Thread이용)다른 방법
람다식으로 1초마다 시간 출력(Runnable 이용)LocalDateTime(시각.now()), DateTimeFormatter(표현형식 만들기.ofPattern())
문법 public void forEach(Consumer<? super E> action)\-> 함수형 인터페이스(FunctionalInterface): 추상메소드를 한개만 가지고 있는 인터페이스\-> 익명의 내부클래스, 람다식을 사용해볼 수 있겠다.\-> 추상메
예제)public void forEach(BiConsumer<? super K,? super V> action)Interface BiConsumer<T,U>를 구현함. 얘도 역시 함수형 인터페이스임
List에 담긴 요소<제네릭타입>은 Comparable인터페이스를 상속받아야 함Collections.sort(): public void sort(Comparator<? super E> c)오름차순 정렬 메소드. 제네릭타입이 Comparable을 impleme
sorted() : ()안의 조건으로 정렬해주는 기능filter() : ()안의 조건으로 필터링 해주는 기능map() : ()안의 조건의 요소만 가져오는 기능문법
Comparator인터페이스를 이용해서 정렬방식을 재정의 할 수 있다.Stream<클래스> sorted(Comparator<? super Student> comparator)추상 메소드compare: 매개변수로 해당 클래스 두개를 받음'public int c
추상메소드 R apply(T t) Function 문법
예시(클래스: Student): 번호가 짝수인 학생들만 출력한줄로 줄여서
Function: 함수형 인터페이스, 추상메소드: applymap(): 해당 리턴타입만 출력하게 해줌예시
메소드를 참조하여 매개변수의 정보 및 리턴타입을 알아낸 뒤 람다식에서 불필요한 매개변수를 제거함