티스토리 뷰

Java

람다 표현식 간단 정리

까오기 까오기 2021. 5. 7. 15:46

Java Lambda 표현식
Lambda 표현식은 Java 8에서부터 추가되었습니다.
람다 식은 매개 변수를 받아 값을 반환하는 짧은 코드 블록으로 메서드와 비슷하지만 이름이 필요하지 않으며(익명함수) 메서드 본문에서 바로 구현할 수 있습니다.

 

여기서는 람다 표현식에 대한 Syntax만 정리하였습니다. 

 

1. 인자가 없는 경우 

1-1. 하나의 문장 처리 

() -> expression body

1-1. 여러 문장 처리 

() -> { expression body }

2. 파라미터(전달 인자)가 있는 경우 

2-1. 하나의 문장 처리 

(parameters) -> expression body

// parameter가 하나인 경우 
parameter ->  expression body

1-1. 여러 문장 처리 

(parameters) -> { expression body }

// parameter가 하나인 경우 
parameter -> { expression body }

 

예제 

import java.util.Arrays;
import java.util.function.Consumer;
import java.util.stream.Stream;

public class TestLamda {

    public static void main(String[] args) {

        // test data 
        List<Integer> numbers = Arrays.asList(1,5,4,2,3);
        
        // 레거시 형태 출력 
        for(Integer i : numbers) System.out.println(i);
        
        // stream 이용한 출력 
        numbers.forEach(System.out::println);
        
        // 인자가 하나인 형태 
        numbers.forEach(n -> System.out.println(n));
        
        // 인자가 하나인 형태 
        numbers.forEach((n) -> { System.out.println(n); } );

        // stream에서 함수 형태 처리  
        Consumer<Integer> method = n -> System.out.println(n);
        numbers.forEach(method);

    }
        
}

 

댓글
댓글쓰기 폼