ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • swift - backslash dot \.
    swift 2021. 5. 11. 21:39

    문제 풀이 도중 다른 사람의 코드를 확인하다

     

    이런 코드를 찾았다.

     

    그런데 

     

     

    과 wholeNumberValue,

     

     

     

    백슬래쉬 닷 wholeNumberValue

    부분이 생소해 찾아보았다.

     

     

    출처-developer.apple.com

    wholeNumberValue 는 캐릭터가 한문, 특수기호 등을 포함해 숫자라면 

    Int? 형으로 반환하는 메소드다.

     

     

     

    \. 

    백슬래쉬 닷 은 

    key-path-expression 이다

     

    \ <TYPE NAME> . <path> 

    이런 식으로 사용되는데, TYPE의 경우 타입 추론이 가능하여서, 추론이 가능한 상황이라면

    백슬래쉬 닷<path>  \.<path> 이런 식으로 사용이 가능하다.

     

    KeyPath에 더 자세히 기술된 사이트

     

     

    알아본 내용으로 이 코드를 이해하면,

    n-digit*9 ..< n 범위의 값을 가진 Array을 탐색하는데,

     

    String(원소)를 compactMap을 통해

    Character로 한 글자씩으로 나눈 후 .wholeNumberValue 하여

    옵셔널 (Int) 가 된 것을 언래핑 하여, [Int] 배열로 만든다.

    그리고 배열의 원소를 reduce로 0과 +, 합친다.

     

    위에서 합친 값과 원소의 합이, n과 가장 먼저 일치하는 

    first  원소를 탐색하여 Int? 형으로 반환하는데,

    탐색에 성공할 경우 언래핑 하여 Int, 실패할 경우 0으로 반환한다.

     

     

    'swift' 카테고리의 다른 글

    Swift - UserDefaults extension 활용 편하게 사용하기  (0) 2022.10.14
    UIView - touch 관련 메소드, 멀티 터치  (2) 2021.07.13
    swift style guide - Naming  (0) 2021.06.20
    swift - escaping closure, result type  (0) 2021.06.03
    로그 출력  (0) 2021.06.01

    댓글

Designed by Tistory.