OPEN HYPER STEP
← 목록으로 (Java+Spring)
JAVA · 20 / 69
java
CHAPTER 20 / 69
읽기 약 2
SYNTAX

람다와 스트림


핵심 개념

Java 8+의 람다: 익명 함수를 간결하게 표현.

스트림 API: 컬렉션을 선언적으로 처리.

filter, map, sorted, collect — 4개의 핵심 연산.

실무에서 for loop 대신 Stream을 자주 사용한다.

코드 분석
JAVA📋 코드 (26줄)
import java.util.*;
import java.util.stream.*;

public class LambdaStream {
    public static void main(String[] args) {
        List<Integer> nums = Arrays.asList(5, 3, 8, 1, 9, 2, 7, 4, 6);

        // 람다 (Comparator)
        nums.sort((a, b) -> a - b);
        System.out.println(nums);  // [1,2,3,4,5,6,7,8,9]

        // 스트림
        List<Integer> result = nums.stream()
            .filter(n -> n % 2 == 0)    // 짝수만
            .map(n -> n * 10)            // 10배
            .sorted(Comparator.reverseOrder())  // 역순
            .collect(Collectors.toList());

        System.out.println(result);  // [80, 60, 40, 20]

        // 통계
        int sum = nums.stream().mapToInt(Integer::intValue).sum();
        double avg = nums.stream().mapToInt(Integer::intValue).average().orElse(0);
        System.out.println("합계: " + sum + ", 평균: " + avg);
    }
}

AI 프롬프트
🤖 AI에게 잘 물어보는 법 — 모델·전략별 프롬프트
Claude

무료: Sonnet 4.6 / Pro $20/mo: Opus 4.6

이 Spring '람다와 스트림' 코드에서
DI 관련 버그·순환 참조·트랜잭션 누수를
찾아서 수정해줘.
ChatGPT

무료: GPT-5.5 / Plus $20/mo: GPT-5.5 Pro

'람다와 스트림'를 Spring Boot 3.x로 구현한
실전 API 코드(컨트롤러+서비스+레포지토리+테스트)를 완성형으로 만들어줘.
Gemini

무료: 2.5 Flash / Pro $19.99/mo: 3.1 Pro

이 Spring '람다와 스트림' 프로젝트의 빈 구조와
의존성 트리를 전체 분석하고
N+1 쿼리·순환 참조·성능 병목을 정리해줘.
Grok

무료: Grok 4.1 / SuperGrok $30/mo

Spring '람다와 스트림' vs Quarkus·Micronaut·Ktor의
동일 기능 구현을 2026년 한국 채용 시장 기준으로
솔직히 비교해줘.

⭐ 이것만 기억하세요
람다와 스트림 이 3가지만 확실히 잡으세요
1.for문으로 필터링→변환→수집을 하면 코드가 장황하고 의도가 드러나지 않습니다
2.람다(->)로 익명 함수를 만들고, Stream의 filter/map/collect로 데이터를 선언적으로 처리합니다
3.다음 챕터에서 Java 문법 통합 실습을 합니다


공유하기
진행도 20 / 69