문제

정답
class Solution {
public String solution(String my_string, int k) {
String answer = "";
for(int i = 0; i < k; i++) {
answer += my_string;
}
return answer;
}
}
개념설명
1. 클래스 선언
class Solution {
✔️ 의미
- Solution이라는 클래스 정의
2. 메서드 선언
public String solution(String my_string, int k) {
✔️ 의미
- 문자열과 정수를 받아서 문자열 k번 반복한 결과를 반환하는 메서드
| 요소 | 의미 |
| public | 외부 호출 가능 |
| String | 반환 타입 |
| solution | 메서드 이름 |
| String my_string | 반복할 문자열 |
| int k | 반복 횟수 |
3. 결과 문자열 변수 선언
String answer = "";
✔️ 의미
- 최종 결과를 저장할 문자열 변수
- 빈 문자열로 초기화
- 문자열 누적의 시작점 역할
4. for문 시작 (k번 반복)
for(int i = 0; i < k; i++) {
✔️ 의미
- 문자열 my_string을 정확히 k번 반복
✔️ for문 구성 요소 분석
for(초기식; 조건식; 증감식)
| 부분 | 의미 |
| int i = 0 | 반복 횟수 카운트 시작 |
| i < k | k번 미만까지 |
| i++ | 1씩 증가 |
5. 문자열 누적
answer += my_string;
✔️ 의미
- 기존 answer 뒤에 my_string을 이어 붙임
✔️ 풀어 쓰면
answer = answer + my_string;
6. for문 종료
}
- k번 반복 완료 후 종료
7. 결과 반환
return answer;
✔️ 의미
- 완성된 문자열을 반환
8. 클래스 종료
}
🔚 전체 실행 흐름 요약
- 반복할 문자열과 횟수 입력
- 빈 문자열 준비
- for문으로 k번 반복
- 매번 문자열 누적
- 완성된 문자열 반환
💡 핵심 포인트 정리
| 문법 | 의미 |
| for | 반복 |
| += | 누적 대입 |
| String | 문자열 |
| return | 결과 반환 |
⚠️ 주의사항
❌ 반복 횟수가 클 경우
answer += my_string;
- 문자열은 불변 객체
- 반복할수록 성능 저하 발생
✔️ 더 좋은 방법(고급)
StringBuilder sb = new Stringbuilder();
for(int i = 0; i < k; i++) {
sb.append(my_string);
}
return sb.toString();
- 이 코드는 하나의 문자열을 지정된 횟수만큼 반복해서 하나의 문자열로 만드는 로직이다.
'컴퓨터 > 프로그래머스' 카테고리의 다른 글
| [Java] 프로그래머스 코딩테스트 연습 / 두 수의 연산값 비교하기 (0) | 2026.01.24 |
|---|---|
| [Java] 프로그래머스 코딩테스트 연습 / 더 크게 합치기 (0) | 2026.01.23 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자 리스트를 문자열로 변환하기 (0) | 2026.01.21 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 섞기 (0) | 2026.01.20 |
| [Java] 프로그래머스 코딩테스트 연습 / 문자열 겹쳐쓰기 (0) | 2026.01.19 |