개발/Java

JAVA_17_람다식

onivv 2024. 7. 16. 14:06
반응형

#1 람다식(Lambda expression)

  • JDK 1.8부터 자바에서 지원하는 함수형 프로그래밍
  • 함수의 이름이 없는 익명 함수(anonymous function)를 만들기 위한 표현식
    • 자바는 객체 지향 프로그램으로 클래스 생성 후 클래스 안에 메서드와 객체 만들어서 사용
    • 함수형 프로그래밍은 객체 지향 프로그래밍과 달리 함수만 구현하고 실행
    • *함수: 클래스에서 독립적, 메서드: 클래스에 종속적

#2 람다식 문법

  • '익명 함수'답게 메서드의 이름과 반환 타입을 제거하고 화살표 기호(→)를 사용해 구현
  • 생략
    • () 소괄호 생략 : 매개 변수가 한 개인 경우
    • {} 중괄호 생략 : 함수의 return 타입이 없는(void) 경우
    • return 생략 : 중괄호 안의 구현 코드가 return 문만 존재하는 경우 (중괄호, return 모두 생략)
int add(int x, int y) {
	return x + y;
}

↓

(x, y) → {return x + y;}
------	 ---------------
매개변수	    함수구현

 

#3 함수형 인터페이스

  • 람다식을 사용하기 위해서는 함수형 인터페이스를 선언함
  • 함수형 인터페이스는 익명 함수와 매개변수만으로 구현되기에 하나의 추상 메서드만 가짐
  • @FunctionalInterface : 함수형 인터페이스 선언 시 어노테이션을 사용하면 메서드 두개 이상 선언하는 개발자 실수 방지 가능
반응형

'개발 > Java' 카테고리의 다른 글

JAVA_18_Thread  (1) 2024.07.16
JAVA_16_컬렉션 프레임워크  (1) 2024.07.16
JAVA_15_기본 API 클래스  (1) 2024.07.16
JAVA_14_예외 처리  (1) 2024.07.16
JAVA_13_내부 클래스  (0) 2024.07.16