[swift] guard 문을 사용하여 옵셔널 타입 다루기

Swift는 안전한 코드 작성을 위해 옵셔널 타입을 제공합니다. 이는 값이 없을 수 있는 변수나 상수를 다룰 때 사용됩니다. 옵셔널 타입은 값이 있을 수도 있고 없을 수도 있는 변수의 타입으로 선언되며, 이를 처리하기 위해 if let 문과 함께 guard 문을 사용할 수 있습니다.

guard문은 조건을 만족하지 않을 경우 실행이 중단되며, else 블록이 실행됩니다. 이를 통해 코드의 가독성을 높이고 조건이 충족되지 않았을 때 빠르게 처리할 수 있습니다.

아래는 guard 문을 사용하여 옵셔널 타입을 처리하는 예제입니다.

func processOptionalValue(_ optionalValue: Int?) {
    guard let value = optionalValue else {
        print("값이 존재하지 않습니다.")
        return
    }
    
    print("값이 존재합니다: \(value)")
    // 값이 존재하는 경우, 해당 값을 처리하는 로직을 작성합니다.
}

let optionalValue1: Int? = 10
let optionalValue2: Int? = nil

processOptionalValue(optionalValue1) // 값이 존재합니다: 10
processOptionalValue(optionalValue2) // 값이 존재하지 않습니다.

위의 예제에서는 optionalValue라는 옵셔널 타입을 가진 인자를 받는 함수 processOptionalValue를 정의하였습니다. guard 문을 사용하여 optionalValuenil이 아니라면 value라는 변수에 값을 할당하고, 그렇지 않은 경우 “값이 존재하지 않습니다.”라는 메시지를 출력하고 함수에서 바로 리턴합니다.

이렇게 guard 문을 사용하여 옵셔널 타입을 처리하면, 코드의 가독성을 높이고 값이 존재하지 않을 경우에 대한 처리를 간편하게 할 수 있습니다.

참고 자료: