프로그래머스 “문자열 겹쳐쓰기” 문제 해결과정입니다.
문자열 겹쳐쓰기
문제설명
문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
my_string와overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.- 1 ≤
overwrite_string의 길이 ≤my_string의 길이 ≤ 1,000 - 0 ≤
s≤my_string의 길이 –overwrite_string의 길이
입출력 예
| my_string | overwrite_string | s | result |
|---|---|---|---|
"He11oWor1d" | "lloWorl" | 2 | "HelloWorld" |
"Program29b8UYP" | "merS123" | 7 | "ProgrammerS123" |
문제 해결과정
프로그래머스 코드
class Solution {
public String solution(String my_string, String overwrite_string, int s) {
return new StringBuilder(my_string).replace(s, s + overwrite_string.length(), overwrite_string).toString();
}
}
스트링빌더 선언 후 replace메소드를 사용해서 s부터 교체할 문자열의 끝 길이까지 교체 문자열로 바꾼다. 이후 리턴 값이 문자열이므로 toString으로 변환.