187. 핸드폰 번호 가리기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
func solution(_ phone_number:String) -> String {
var answer : String = ""
var arr : [String] = []
arr = phone_number.map{String($0)}
if arr.count > 4 {
for i in 0...arr.count-5 {
arr[i] = "*"
}
answer = arr.joined()
} else {
answer = phone_number
}
return answer
}
우선 배열로 만들었다. 그리고 count -5를하여 뒤의 4자리만 살리게 하려고 하였다.
그대로 제출을 하니 count 가 4일때 즉 길이가 4일때는 에러가 발생하였다.
그래서 if 문을 걸어서 길이가 4일때는 문자열 그대로 출력하게 하였다.
suffix, prefix를 알고있었으나 적용을 할수가 없었다. 지식이 부족했다.
repeating을 사용하여 *을 반복적으로 생성하게 하였다.
다른코드
1
2
3
func solution(_ phone_number:String) -> String {
return String("\(String(repeating: "*", count: phone_number.count - 4))\(phone_number.suffix(4))")
}
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.