문제

정답
class Solution {
public String solution (String[] arr) {
String answer = "";
for(int i = 0; i < arr.length; i++) {
answer = answer + arr[i];
}
return answer;
}
}
개념설명
1. 클래스 선언
class Solution {
✔️ 의미
- Solution이라는 클래스 정의
2. 메서드 선언
public String solution(String[] arr) {
✔️ 의미
- 문자열 배열을 받아서 하나의 문자열로 합쳐 반환하는 메서드
| 요소 | 의미 |
| public | 외부 호출 가능 |
| String | 반환 타입 |
| solution | 메서드 타입 |
| String[] arr | 문자열 배열 (여러 개의 문자열) |
📌 String[]
- 문자열(String)을 여러 개 담을 수 있는 배열 타입
3. 결과 문자열 변수 선언
String answer = "";
✔️ 의미
- 최종 결과를 저장할 문자열 변수
- 빈 문자열로 초기화
- 문자열 누적의 시작점 역할
4. for문 시작 (배열 전체 순회)
for(int i = 0; i < arr.length; i++) {
✔️ 의미
- 배열 arr에 들어 있는 모든 문자열을 하나씩 처리
📌 for문 구성 요소 분석
for(초기식; 조건식; 증감식)
| 부분 | 의미 |
| int i = 0 | 배열 인덱스 시작 |
| i < arr.length | 배열 길이만큼 반복 |
| i++ | 인덱스 1씩 증가 |
5. arr.length
arr.length
✔️ 의미
- 배열에 들어 있는 요소 개수
- 배열은 length 뒤에 () 없음
📌 문자열과 배열 차이
| 타입 | 길이 구하기 |
| 문자열 | str.length() |
| 배열 | arr.length() |
6. 배열 요소 접근
arr[i]
✔️ 의미
- 배열의 i번째 요소 접근
- 여기서는 i번째 문자열
📌 예시
arr = {"a", "b", "c"}
arr[0] → "a"
arr[1] → "b"
arr[2] → "c"
7. 문자열 누적(연결)
answer = answer + arr[i];
✔️ 의미
- 기존 문자열 answer 뒤에
- 현재 배열 요소(arr[i])를 이어 붙임
8. for문 종료
}
- 배열의 모든 요소를 처리하면 반복 종료
9. 결과 반환
return answer;
✔️ 의미
- 완성된 문자열을 메서드 호출부로 반환
10. 클래스 종료
}
🔚 전체 실행 흐름 요약
- 문자열 배열 입력
- 빈 문자열 준비
- 배열을 앞에서부터 끝까지 순회
- 각 문자여ㅕㄹ을 차례대로 이어 붙임
- 완성된 문자열 반환
💡 핵심 포인트 정리
| 문법 | 의미 |
| String[] | 문자열 배열 |
| arr.length | 배열 길이 |
| for | 반복 |
| + | 문자열 연결 |
| return | 결과 반환 |
'컴퓨터 > 프로그래머스' 카테고리의 다른 글
| [Java] 프로그래머스 코딩테스트 연습 / 더 크게 합치기 (0) | 2026.01.23 |
|---|---|
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 곱하기 (0) | 2026.01.22 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 섞기 (0) | 2026.01.20 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 겹쳐쓰기 (0) | 2026.01.19 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 돌리기 (0) | 2026.01.18 |