MUKER_DEV with iOS

[Swift] Programmers LV1 - 문자열 다루기 기본 본문

카테고리 없음

[Swift] Programmers LV1 - 문자열 다루기 기본

MUKER 2022. 6. 27. 14:59

 

제 문제 풀이는 최선의 풀이가 아닐 수 있습니다. 문제를 푸는 방법은 다양합니다!

 

문제설명

 

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

제한 조건

  • s는 길이 1 이상, 길이 8 이하인 문자열입니다.

 

입출력 예

s return
"a1234" false
"1234" true

 

문제 분석

1. 입력 받은 문자열의 길이가 4, 6인지 확인할 수 있다.

2. 문자열 안에 숫자만 있는지 확인할 수 있다.

 

Solution.swift

func solution(_ s:String) -> Bool {
    
    if s.count == 4 || s.count == 6 {
        print(Int(s))
        
        // Int()로 문자열을 바꿔줄 때 문자열에 숫자만 있다면 숫자열로 잘 변환되지만
        // 문자열이 있으면 nil로 반환 된다.
        // 그래서 문자열이 있는걸 확인하려면 nil이 나오나 확인하면 된다.
        if Int(s) != nil {
            return true
        }
    }
    return false
}

 

Progremmers Recommend Solution

func solution(_ s:String) -> Bool {
    return (Int(s) != nil && (s.count == 4 || s.count == 6)) ? true : false
}