[java] 람다 표현식을 사용하여 컬렉션 요소를 어떻게 처리할 수 있나요?

예를 들어, 컬렉션의 각 요소를 출력하는 간단한 방법을 살펴보겠습니다. 다음은 람다 표현식을 사용하지 않은 기존의 방식입니다.

List<String> names = Arrays.asList("John", "Sarah", "Mark", "Tina");
for (String name : names) {
    System.out.println(name);
}

이제 람다 표현식을 사용하여 같은 작업을 수행하는 방법을 살펴보겠습니다.

List<String> names = Arrays.asList("John", "Sarah", "Mark", "Tina");
names.forEach(name -> System.out.println(name));

위의 예제에서 forEach 메소드는 각 요소에 대해 주어진 동작을 수행합니다. 람다 표현식 name -> System.out.println(name)은 각 요소를 받아들여 출력합니다.

또 다른 예로, 컬렉션의 각 요소에 대해 특정 연산을 수행하고 그 결과를 새로운 컬렉션으로 만드는 경우를 살펴보겠습니다. 다음은 람다 표현식을 사용한 예제입니다.

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
List<Integer> squaredNumbers = numbers.stream()
                                     .map(number -> number * number)
                                     .collect(Collectors.toList());

위의 예제에서 map 메소드는 각 요소에 주어진 함수를 적용하고, collect 메소드는 그 결과를 리스트로 수집합니다.

람다 표현식을 사용하면 코드를 간결하게 작성할 수 있으며, 함수형 프로그래밍 스타일을 도입하여 컬렉션을 쉽게 다룰 수 있습니다. Java의 람다 표현식은 매우 강력하며, 이를 효율적으로 활용하면 코드 작성과 유지보수가 더욱 간편해집니다.

더 많은 정보를 원하시면 Oracle의 공식 자바 문서를 참고하시기 바랍니다.