티스토리 뷰

Java

[Java] 람다식 (2)

sayho 2022. 3. 12. 23:06
함수적 인터페이스 : @FunctionalInterface

  모든 인터페이스를 람다식으로 사용할 수 없다. 람다식은 하나의 메서드를 정의하기 때문에 인터페이스에

  하나의 함수만 선언되어 있어야한다. 두개 이상의 추상 메서드가 선언된 경우 해당 인터페이스는 람다식을

  이용하여 구현 객체를 생성할 수 없다. 하나의 추상메서드가 있는 인터페이스 형태함수적 인터페이스라고

  한다. 그리고 @FunctionalInterface 애노테이션을 선언해주면 해당 인터페이스는 함수적 인터페이스라는 의미다.

함수적 인터페이스 : Consumer

  리턴 값이 없는 accept() 를 가지고 있고 매개 값을 소비하기 위한 용도이다.

Consumer<String> consumer = t => System.out.println("T의 결과 : " + t);
consumer.accept("hello");
>> 출력 T의 결과 : hello

IntConsumer intConsumer = t => System.out.println("T에 10을 더하면?" + (t+10));
consumer.accept(1);
>> 출력 T의 결과 : 11
함수적 인터페이스 : Supplier

  매개 값을 리턴 타입으로 변환하는 인터페이스다. 

IntSupplier supply = () -> {
	int num = 10*10*3.14;
    return num
};

int a = supply.getAsInt();
System.out.println(a);

>> 출력 314
함수적 인터페이스 : Function

  매개 값과 리턴 값을 가진 인터페이스다. 

'Java' 카테고리의 다른 글

객체지향  (0) 2022.03.20
[Java] 컬렉션 프레임워크  (0) 2022.03.13
[Java] 람다식 (1)  (0) 2022.03.10
[Java] Iterator와 ListIterator  (0) 2022.02.05
[Java] Collection 과 List  (0) 2022.02.05
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함