2014.08.08 16:58

Swift - Data Type #Optionals

Optional 타입

  • 변수나 상수에 값이 있는지도 모르는 경우에 사용한다
  • 예를 들어 X에 값이 있는 경우에만 Y와 같은지 비교하고자 할 때 사용한다
  • Optional로 선언하려면 데이터 타입 뒤에 물음표 (?)를 붙여서 사용한다
  • 예를 들어 정수형의 경우 다음과 같이 선언한다
    • var A:Int?
  • A에 정수값 100을 할당하거나 nil을 할당하여 A가 아무런 값이 없도록 할 수 있다.
    • A = 100 또는 A = nil
  • 참고로 Swift의 nil은 Objective-C의 nil과 다르며 단지 값의 존재 여부를 확인하는 용도로만 사용된다
  • 만약 해당 값이 분명히 존재한다고 확신하는 경우 느낌표(!) 문자를 뒤에 붙여 사용할 수 있다

if A != nil {

    println (" A has a value of \(A!).")


Optional Binding

  • if 나 while 문에서 Optional 타입 값이 있는 경우 해당 값을 임시로 상수나 변수에 할당하여 사용하는 것을 말한다

Implicitly Unwrapped Optional

  • Optional 타입이라 할지라도 명확하게 항상 값을 갖는 경우라면 이를 사용할 때 이름뒤에 느낌표(!)를 붙여서 사용할 수 있지만, 사용하는 곳이 많아지면 느낌표를 붙여서 사용하기도 매우 귀찮은 일이 될 것이므로, 아예 생성 타입에 느낌표(!)를 붙이여 Optional이 아닌 상태로 생성하도록 한다.
    • var A:Int? = 100
    • var B:Int! = A
  • 참고로 Implicitly Unwrapped Optional로 선언되었다 하더라도 값이 없는 경우에는 nil 값을 가질 수 있다


'Technical Stubs > Apple Swift' 카테고리의 다른 글

Swift - String  (0) 2014.08.08
Swift - Operators  (0) 2014.08.08
Swift - Data Type #Tuple  (0) 2014.08.08
Swift - Data Type #Optionals  (0) 2014.08.08
Swift - Data Type #General  (0) 2014.08.08
Swift - General  (0) 2014.08.08
Trackback 0 Comment 0