본문 바로가기
2022_iOS 앱 개발자 워크숍/1, Swift 문법 복습

Swift : Guard문

by 황민우 2022. 1. 4.

정의 : 표현식이 거짓으로 판단될 경우 실행

   - 반드시 else 절이 포함되야 함.
   - else 절에는 흐름을 빠져나가는 구문(return, break, continue, throw)을 반드시 포함해야함.

   - 언래핑된 변수의 값을 guard문 밖에 있는 코드가 사용할 수 있음. ( if let은 불가능 )

 

형식

guard <불리언 표현식> else {
		// 표현식이 거짓일 경우 실행될 코드
		// <탈출 구문>
}
		// 표현식이 참일 경우 실행될 코드

 

guard문 예제

func munliplyByTen(value: Int?) {
    guard let number = value, number < 10 else {
        print("수가 10보다 크다")
        return
    }
    print(number*10)
}
munliplyByTen(value: 3)

실행결과
// 30
func munliplyByTen(value: Int?) {
    guard let number = value, number < 10 else {
        print("수가 10보다 크다")
        return
    }
    print(number*10)
}
munliplyByTen(value: 11)

실행결과
// 11

 

if let과 guard let 을 활용한 예제 1 : If let

func Login(firstName:String, lastName:String?){
    if let lName = lastName{
        print(lName,firstName)
    }
    else{
        print("다시 입력하세요")
    }
}
Login(firstName:"회원", lastName:"황")

실행결과
// 황 회원

 

if let과 guard let 을 활용한 예제 2 : guard let

func Login(firstName:String, lastName:String?){
    guard let lName = lastName else {
        print("다시 입력하세요")
        return
    }
        print(lName,firstName)
}
Login(firstName:"회원", lastName:"황")

실행결과
// 황 회원
func Login(firstName:String, lastName:String?){
    guard let lName = lastName else {
        print("다시 입력하세요")
        return
    }
        print(lName,firstName)
}
Login(firstName:"회원", lastName:nil)

실행결과
// 다시 입력하세요

강의 출처 : https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA

댓글