인덱스 바꾸기
문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.
1 < my_string의 길이 < 100
0 ≤ num1, num2 < my_string의 길이
my_string은 소문자로 이루어져 있습니다.
num1 ≠ num2
💻 풀이
num1 과 num2의 값을 바꿔준다.num1의 값을 미리 저장해둔다.⌛ 시간 0.12ms ~ 0.13ms
public String solution(String my_string, int num1, int num2) {
String[] strArr = my_string.split("");
StringBuilder sb = new StringBuilder();
String str1 = strArr[num1];
strArr[num1] = strArr[num2];
strArr[num2] = str1;
for(int i = 0; i < strArr.length; i++) {
sb.append(strArr[i]);
}
return sb.toString();
}
💻 풀이
char[] 에 문자열을 하나씩 분리해 담아주고String.valueOf() 를 사용해 문자열로 변환한 후 반환한다.⌛ 시간 0.02ms ~ 0.03ms
public String solution1(String my_string, int num1, int num2) {
String answer = "";
char[] ch = my_string.toCharArray();
ch[num1] = my_string.charAt(num2);
ch[num2] = my_string.charAt(num1);
answer = String.valueOf(ch);
return answer;
}