문제 설명
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 100
- letter은 길이가 1인 영문자입니다.
- my_string과 letter은 알파벳 대소문자로 이루어져 있습니다.
- 대문자와 소문자를 구분합니다.
입출력 예
입출력 설명
입출력 예 #1
- "abcdef" 에서 "f"를 제거한 "abcde"를 return합니다.
입출력 예 #2
- "BCBdbe" 에서 "B"를 모두 제거한 "Cdbe"를 return합니다.
코드
import java.util.*;
class Solution {
public String solution(String my_string, String letter) {
String answer = "";
StringBuilder st = new StringBuilder();
for(int i=0; i<my_string.length(); i++) {
if(my_string.charAt(i) != letter.charAt(0))
st.append(my_string.charAt(i));
}
answer = String.valueOf(st);
return answer;
}
}
풀이
반복문에서 charAt()을 이용해 my_string을 문자로 변환한 것이 letter를 문자로 변환한 것과 다르다면 StringBuilder에 추가해준다. 반복문이 끝난 후 valueOf()를 이용해 StringBuilder를 문자열로 변환하여 answer에 할당해준다.
다른 코드와 풀이
아래의 코드는 다른 사람들이 작성한 것들로, 내 코드와 비교, 참고하기 위해 가져왔다.
class Solution {
public String solution(String my_string, String letter) {
String answer = "";
answer = my_string.replace(letter, "");
return answer;
}
}
replace 메서드를 이용해 my_string에 letter가 있으면 빈 문자열로 변환하여 answer에 할당해준다.
'Coding Test' 카테고리의 다른 글
231001 문자열 안에 문자열 - Level 0 (0) | 2023.10.01 |
---|---|
230930 모음 제거 - Level 0 (1) | 2023.09.30 |
230929 중복된 숫자 개수 - Level 0 (0) | 2023.09.29 |
230928 숫자 찾기 - Level 0 (0) | 2023.09.28 |
230927 인덱스 바꾸기 - Level 0 (0) | 2023.09.27 |