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

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

문제

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

Java
import java.util.*; import java.util.stream.*; public class Main { public static void main(String[] args) { String result = Stream.of("apple", "banana", "cherry", "date") .filter(s -> s.length() > 4) .map(s -> s.substring(0, 2).toUpperCase()) .reduce("", (total, part) -> { if (total.isEmpty()) return part; return total + "-" + part; }); System.out.println(result); } }

정답

AP-BA-CH

AP-BA-CH

해설

먼저 길이가 4보다 긴 문자열만 필터링: "apple", "banana", "cherry"가 선택됩니다. 각각 앞 2글자를 대문자로 변환: "AP", "BA", "CH"가 됩니다. reduce에서 첫 번째 요소는 그대로 "AP"가 되고, 이후 요소들은 "-"로 연결되어 최종 결과는 "AP-BA-CH"입니다.

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

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