자바

List stream() 문법 사용 예제

수아파파's 2023. 9. 18. 11:27
반응형

List의 stream() 메소드를 사용하여 요소를 처리하는 예제는 다음과 같습니다.

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class StreamExample {
    public static void main(String[] args) {
        List<String> fruits = new ArrayList<>();
        fruits.add("apple");
        fruits.add("banana");
        fruits.add("orange");
        fruits.add("grape");
        fruits.add("mango");

        // 요소를 출력하는 예제
        fruits.stream().forEach(fruit -> System.out.println(fruit));

        // 문자열의 길이가 5 이상인 요소만 필터링하여 새로운 리스트 생성하는 예제
        List<String> longFruits = fruits.stream()
                                       .filter(fruit -> fruit.length() >= 5)
                                       .collect(Collectors.toList());

        // 요소를 대문자로 변환하여 새로운 리스트 생성하는 예제
        List<String> upperCaseFruits = fruits.stream()
                                             .map(fruit -> fruit.toUpperCase())
                                             .collect(Collectors.toList());

        // 요소를 정렬하여 출력하는 예제
        fruits.stream().sorted().forEach(fruit -> System.out.println(fruit));

        // 문자열의 길이를 합산하는 예제
        int totalLength = fruits.stream()
                               .mapToInt(fruit -> fruit.length())
                               .sum();
    }
}

위의 예제에서는 List인 fruits를 생성하고 여러 가지 스트림 메소드를 사용하여 요소를 처리하는 다양한 예제를 보여줍니다. forEach() 메소드를 사용하여 요소를 출력하거나 filter() 메소드를 사용하여 특정 조건을 만족하는 요소를 필터링할 수 있습니다. map() 메소드를 사용하여 요소를 변환하거나 sorted() 메소드를 사용하여 요소를 정렬할 수도 있습니다. 또한, mapToInt() 메소드와 sum() 메소드를 사용하여 요소의 속성을 합산하는 것도 가능합니다.

반응형