Java/자바 정리
161. Stream API 시작하기 – 컬렉션 요소 반복 처리
코딩하는냥이
2025. 5. 23. 10:09
반응형
자바 8부터 도입된 Stream API는 컬렉션 데이터를 간결하고 선언적인 방식으로 처리할 수 있게 해줍니다.
이번 예제에서는 Set<String>에 저장된 문자열을 스트림으로 변환한 뒤,
각 요소를 순회하며 출력하는 기본 구조를 실습해보겠습니다.
📌 예제 코드
import java.util.HashSet;
import java.util.Set;
import java.util.stream.Stream;
public class StreamExample {
public static void main(String[] args) {
Set<String> set = new HashSet<String>();
set.add("홍길동");
set.add("신용권");
set.add("감자바");
Stream<String> stream = set.stream();
stream.forEach(System.out::println);
// stream.forEach(name -> System.out.println(name));
// ▼ 만약 람다식을 사용하지 않는다면
// stream.forEach(new Consumer<String>() {
// public void accept(String name) {
// System.out.println(name);
// }
// });
}
}
💻 실행 결과
홍길동
신용권
감자바
※ 출력 순서는 Set의 특성상 실행할 때마다 달라질 수 있습니다.
💬 코드 설명
- Set<String>에 세 명의 이름을 저장합니다.
- set.stream()을 호출하여 Set을 Stream으로 변환합니다.
- forEach()는 스트림의 각 요소를 순회하며,
람다식을 통해 각 이름을 System.out.println()으로 출력합니다. - Stream은 한 번 사용하면 소모되므로, 재사용하려면 다시 생성해야 합니다.
💡 포인트 정리
- Collection.stream() 메서드를 사용하면 컬렉션 데이터를 스트림 형태로 변환할 수 있습니다.
- 스트림은 요소를 하나씩 꺼내어 처리하는 반복 처리 기능을 간결하게 제공합니다.
- forEach()는 가장 기본적인 스트림 처리 메서드로, 각 요소에 대해 지정한 동작을 수행합니다.
- Set은 순서가 없기 때문에 출력 결과의 순서는 매번 달라질 수 있습니다.
📌정리하자면, 이번 예제는 Stream API의 가장 기본적인 사용법인 컬렉션 → 스트림 변환 → 요소 출력 흐름을 실습한 예제였습니다.
이후 스트림은 필터링, 정렬, 매핑, 집계 등 다양한 중간/최종 연산과 함께 활용되므로,
이번 내용을 기반으로 점차 활용 범위를 넓혀가 보시면 좋겠습니다.