[프로그래머스] 특정 문자 제거하기

Sdoubleu·2023년 3월 23일
0

프로그래머스

목록 보기
11/34
post-thumbnail

문제


내가 쓴 풀이

class Solution {
    fun solution(my_string: String, letter: String): String {
        return my_string.filter { it.toString() != letter }.map { it }.joinToString("")
    }
}

map이 새로운 array를 만든다고 생각해서
filter를 통해 특정 문자를 걸러내고 map으로 새로운 리스트를 만들었다

그런데 굳이 새로운 객체를 생성할 필요없이
filter를 통해 조건에 부합하는 문자열만 제외시켜서 나타낼 수 있었다

map으로 만들었을 땐 [ ] 의 형태로 나오기때문에
출력 타입과 맞지 않아서 joinToString()이란 함수에
""를 넣어서 문자열을 이어줬다


다른 사람 풀이

1)
class Solution {
    fun solution(my_string: String, letter: String): String {
        return my_string.filterNot { it == letter[0]}
    }
}
  • 조건이 아닐 경우에만 남길 때 사용했다
2)
class Solution {
    fun solution(my_string: String, letter: String): String  = my_string.replace(letter, "")
}
  • 특정 문자열을 ""으로 바꿔줘서 연결시켰다

📌참고자료

filterNot

joinToString

profile
개발자희망자

0개의 댓글