정보처리기사 실기JavaJava - Stream reduce난이도 2SHORT_ANSWER

정보처리기사 실기 Java - Stream reduce 기출문제 #736

문제

다음 Java 코드의 실행 결과를 쓰시오.

Java
import java.util.*; import java.util.stream.*; public class Main { public static void main(String[] args) { String result = Stream.of("cat", "dog", "bird", "fish") .filter(s -> s.length() > 3) .map(String::toUpperCase) .reduce("", (a, b) -> a + b.charAt(0)); System.out.println(result); } }

정답

BF

BF

해설

Stream 연산 과정을 단계별로 분석하면: 1) filter(s -> s.length() > 3): 길이가 3보다 큰 문자열만 필터링 → "bird", "fish" 2) map(String::toUpperCase): 대문자로 변환 → "BIRD", "FISH" 3) reduce("", (a, b) -> a + b.charAt(0)): 빈 문자열부터 시작해서 각 문자열의 첫 번째 문자를 누적 → "" + "B" + "F" = "BF"

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[정보처리기사 실기] Java - Stream reduce Java 기출 #736 | sqldpass