StringBuilder - reverse, replace 이용하기
https://school.programmers.co.kr/learn/courses/30/lessons/181913
class Solution {
public String solution(String my_string, int[][] queries) {
StringBuilder sb = new StringBuilder(my_string);
for (int i = 0; i < queries.length; i++) {
int start = queries[i][0];
int end = queries[i][1];
// 뒤집을 부분 문자열을 추출한 후 뒤집기
StringBuilder rev = new StringBuilder(sb.substring(start, end + 1)).reverse();
// 원본 문자열에서 뒤집힌 부분을 교체하기
sb.replace(start, end + 1, rev.toString());
}
return sb.toString();
}
}
String 클래스와 동일한 메서드
// String 클래스와 동일 메서드
charAt() - 특정 인덱스 위치의 문자 반환
indexOf() / lastIndexOf() - 문자열 검색해서 위치 반환
length() - 문자열 길이 반환
replace() - 검색된 문자열 교체
substring() - 특정 인덱스 범위 내 문자열을 복사해서 새로 생성된 인스턴스 반환
toString() - 문자열 출력
StringBuilder 에서만 쓰이는 메서드
// StringBuilder 에서만 쓰이는 메서드
append() - 문자열 추가
reverse() - 문자열 뒤집기
해당 문제에서 사용한 메서드
StringBuilder sb = new StringBuilder("문자열").reverse()
ㄴ 문자열 뒤집기 가능
sb.replace(시작 인덱스, 종료 인덱스 + 1, "변경할 문자열");
ㄴ replace()
StringBuilder 객체를 문자열로 변경하려면 .toString() 이용하기
'코딩테스트 > programming_JAVA' 카테고리의 다른 글
[Java] 프로그래머스_12935 : 제일 작은 수 제거하기 (0) | 2023.09.11 |
---|---|
[Java] 프로그래머스_120868 : 삼각형의 완성조건 (2) (0) | 2023.09.09 |
[Java] 프로그래머스_181921 : 배열 만들기 2 (0) | 2023.09.04 |
[Java] 프로그래머스_120840 : 구슬을 나누는 경우의 수 (0) | 2023.08.31 |
[Java] 프로그래머스_12925 : 문자열을 정수로 바꾸기 (0) | 2023.08.26 |