값이 있을 수도 있고 없을 수도 있는 상태
옵셔널을 사용하는 방법은 변수명 뒤에 들어오는 타입에 ?를 같이 선언해준다.
var name: String?
이렇게 값을 안적어주면 default 값은 "nil"이 된다.
그리고 값이 있을 수도 있고 없을 수도 있는 상태여서 초기에 값을 지정할 수도 있다.
var opotionalName: String? = "Duhyeon"
하지만 옵셔널인 값이기 때문에 다른 곳에서 사용하려면 그 사용하려는 type에도 옵셔널을 붙혀줘야한다.
var opotionalName: String? = "Duhyeon"
var requiredName: String = opotionalName
// error
var requiredName: String? = opotionalName
// "Duhyeon"