soozya
[JAVA] Lv0. 문자열 겹쳐쓰기 본문
[문제]
[답]
[풀이]
약간 복잡했지만.... substring은 문자열 중 특정 문자를 추출할 때 사용할 수 있고, .substring(n, m) 일 때 n은 시작 인덱스 번호, m은 m-1의 값에 해당한다. 예를 들어 (0, 4) 의 경우 인덱스 번호 0부터 4-1인 3까지의 글자를 추출할 수 있는 것!
3라인을 해석하자면 my_string 문자열의 인덱스 번호 0부터 s-1까지의 문자를 추출한 후, overwrite_string의 문자열을 이어 붙임!
만약 3라인까지만 썼을 때, overwrite_string의 문자열이 my_string 문자열보다 길거나 남는 값이 없다면 오류가 생기지 않지만 my_string의 글자가 남는다면 오류가 발생할 수 있음..!
=> website 와 123을 결합할 때 we123te가 되어야 하는데, we123까지만 출력되어 오류 발생한다는 뜻
그래서 4라인을 붙여주어야 함. my_string의 s번째 글자와 overwrite_string의 글자길이를 더 했을 때 나오는 숫자에 해당하는 인덱스 값을 가져오면 됨. 더한 값이 5일 때 인덱스 번호 5부터!
=> website의 인덱스 번호는 0부터 6까지이고 s가 2일 때 해당되는 문자는 b, 결합될 글자(숫자)의 길이는 3이기 때문에 5부터 가져오게 되는 것이다. 그래서 we123에 인덱스 번호 5에 해당하는 t부터 남은 글자를 가져와 te를 붙여주면 됨!
'💻프로그래머스_연습 > LV.0' 카테고리의 다른 글
[JAVA]문자 리스트를 문자열로 변환하기 (2) | 2023.11.17 |
---|---|
[JAVA] 문자열 섞기 (0) | 2023.11.17 |
[JAVA] Lv0. 홀짝 구분하기 (0) | 2023.11.07 |
[JAVA] Lv0. 문자열 돌리기 (0) | 2023.11.06 |
[JAVA] Lv0. 문자열 붙여서 출력하기 (0) | 2023.10.27 |