본문 바로가기

java

[java] 람다식 기초 사용법

객체 지향 언어인 자바에서 일반 함수를 생성할 수 있는 방법이다.

원래 자바는 일반 함수 생성이 안되며 메서드로만 만들어 써야 한다. 그래서 단발적인 함수는 익명 함수로 가능하지만 고차 함수처럼 함수형 프로그래밍을 하지 못했다.

람다식은 그 대안으로서 사용된다.

자바는 함수를 일급 객체로 다루지 않는다.
함수를 일급 객체로 다루면, 변수에 할당, 매개 변수로 전달, 리턴 및 객체 내 저장이 자유로워서 유연하게 고차함수를 만들거나 변형 가능하다.

 

 

문법

람다식의 모태가 될 인터페이스를 선언한다.

사용 위치에서 인터페이스를 타입 선언하고 내용부를 정의하여 사용한다.

매개변수가 한 개이거나 매개변수 간 타입이 동일할 때, 타입 명시를 생략할 수 있다.

실행문장이 1개이면 중괄호 생략가능하다.

매개 변수가 한 개이면 소괄호 생략가능하다.

반환 값은 returen으로 표기한다.

public interface Lambda1 {
	public void method1(String a, String b, String c);
}



Lambda1 func1 = (String x, String y , String z)->{System.out.println("hello");};
func1.method1(" i am"," char"," char");
// 출력
// hello i am char char