[swift] 에러 핸들링을 위한 옵셔널 타입 사용 방법

옵셔널은 스위프트의 핵심적인 개념 중 하나로, 값이 없을 수 있는 상황을 다루는 데 유용합니다. 옵셔널은 값이 있을 수도 있고 없을 수도 있는 변수나 상수를 정의할 때 사용됩니다. 이를 통해 에러 핸들링을 보다 간편하게 할 수 있습니다.

옵셔널 변수 선언

옵셔널 변수는 해당 값이 존재하지 않을 수 있음을 나타내기 위해 ? 를 붙여 선언합니다.

var optionalNumber: Int? = 10
var optionalString: String? = "Hello"
var optionalArray: [Int]? = [1, 2, 3]

옵셔널 언래핑

옵셔널 변수에 접근하기 위해서는 옵셔널 언래핑을 해주어야 합니다. 옵셔널 언래핑은 옵셔널 바인딩을 통해 안전하게 값에 접근할 수 있습니다.

if let number = optionalNumber {
    print("The number is \(number)")
} else {
    print("Value is nil")
}

옵셔널 체이닝

옵셔널 변수가 연속적으로 연결되어 있는 경우, 옵셔널 체이닝을 통해 간편하게 값에 접근할 수 있습니다.

let result = optionalInstance?.property

강제 옵셔널 언래핑

옵셔널 변수의 값이 항상 존재한다고 확신할 때에는 ! 를 사용하여 값을 강제 언래핑할 수 있습니다. 이때 값이 nil 일 경우 런타임 에러가 발생할 수 있으니 주의가 필요합니다.

let unwrappedNumber = optionalNumber!

옵셔널을 활용하여 에러 핸들링을 보다 안전하고 편리하게 할 수 있으며, 옵셔널 바인딩과 옵셔널 체이닝을 통해 값에 안전하게 접근할 수 있습니다.

참고 자료: 스위프트 문서