Optional 변수에 값이 있을 수도 있고 없을 수도 있음을 암시 '데이터가 아예 존재하지 않음'을 나타내는 nil(다른 언어에서는 null)의 가능성을 명시적으로 표현한다. nil의 가능성에 대해 문서화하여 전달하지 않아도 코드만 보고 알아챌 수 있기 때문에 효율적이다. 즉, 전달받은 값이 옵셔널 값이 아니라면 nil이 들어갈 수 없으므로 nil체크를 하지 않아도 안심하고 사용할 수 있다. (흔히 java에서 발생하는 NullPointerException이 발생하지 않는다.) Swift에서 강조하는 안전한 코딩이 가능하다! 옵셔널은 변수의 타입 뒤에 '?' 또는 '!'가 붙어 쉽게 파악할 수 있다. - '?'가 붙은 (일반) 옵셔널 var num: Int? // nil var num2: Int = n..

옵셔널(Optional) 1. 값이 존재할 수도 있고 아예 존재하지 않을 수도 있다. 2. 값이 존재한다면 옵셔널을 언래핑(unwrap)하여 그 값에 접근할 수 있다. Int의 0이나 String의 ""는 값이 존재하지 않음을 나타내는 것이 아니라 각각 0과 ""이라는 값을 가지고 있음을 의미한다. 값이 아예 존재하지 않을 때는 'nil'을 사용해 표현할 수 있다. 옵셔널은 타입 뒤에 물음표(?)를 붙여줌으로써 해당 객체가 옵셔널 객체임을 선언해줄 수 있다. var optionalVal: String? // optionalVal의 타입: Optional optionalVal = "hello, world!" // Optional("hello, world!") optionalVal = nil // nil 옵..