ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Swift - Control Flow
    기술 관련/Apple Swift 2014. 8. 11. 15:19
    For Loops
    • for-in
    • for-condition-increment

    While Loops
    • while
    • do-while

    Conditional Statements
    • if
      • else
      • if else
    • switch
      • case
        • switch에 넘겨진 값에 대한 경우 (case)를 정의한다
        • C 언어에서 같이 명시적으로 해당 case에 대한 break를 쓰지 않아도 된다
          • case A:
          •   handle it for A
          • case B:
          •   handle it for B
        • 여러 case에 해당하는 경우 comma (',')로 연결된 형태로 정의한다
          • case A, B:
          •   handle it for A or B
        • Case에 Range 타입을 입력 할 수 있음
          • case 1...3:
        • Switch 타입이 Tuple인 경우도 처리할 수 있다
          • case (A, B):
          • case (1...3, 5...10):
      • case-where
        • 기본적인 case 조건에 where라는 별도 조건을 추가 할 수 있다
          • case let (x, y) where x == y:
      • default
        • case로 정의되지 않은 부분을 처리한다
        • Swift에서는 switch 문 사용 시 case 를 꽤 철저히 하도록 강제하고 있다
        • 따라서, 명확하게 case를 작성하지 않을 때에는 default를 작성해야 한다
        • default의 경우 적어도 실행 가능한 statement를 문을 작성해야 XCode에서 오류 표시가 되지 않는다.
        • 좀 귀찮기는 하지만 default에서 별다른 동작을 하지 않는다 하더라도 break를 써 준다

    Control Transfer Statements
        • continue
        • break
        • fallthrough
          • Swift는 C언어와 달리 switch 문에서 궂이 break를 써서 case를 구분하지 않는다
          • 따라서, C언어와 같이 case 내부의 실행 조건에 따라 아래 case로 흐름을 넘기기 위해 fallthrough라는 statement가 추가되어 있다
        • return

      Labeled Statements
        • switch나 일반적인 loop 문은 같이 중첩해서 사용 할 수 있다.
        • switch나  loop 문에서 앞에 colon 문자 (':')과 함께 label을 지정하고, 이후 break나 continue statement 문 뒤에 앞서 지정한 label 이름을 지정하면 해당 label로 지정된 statement에 대해 break 또는 continue 동작을 수행한다.


        '기술 관련 > Apple Swift' 카테고리의 다른 글

        Swift - Closures  (0) 2014.08.12
        Swift - Function  (0) 2014.08.11
        Swift - Data Type #Collections  (0) 2014.08.08
        Swift - String  (0) 2014.08.08
        Swift - Operators  (0) 2014.08.08

        댓글

      Designed by Tistory.