not bad 한 개발

Swift - guard문 본문

Swift

Swift - guard문

leebean 2021. 10. 4. 17:34

(인덕대학교 컴퓨터소프트웨어학과 iOS프로그래밍기초(21-2학기)한성현 교수님 강의 내용을 변형 및 요약 했습니다.)

 

guard 문

  • if문 과 같이 조건식의 조건에 따라 코드를 실행하지만 if문과 다른점은 조건이 거짓일 경우 실행됩니다.
  • guard문은 주로 특정 조건에 맞지 않을 경우에 현재의 함수나 반복문에서 빠져 나갈 수 있도록 '조기 출구' 전략을 제공 합니다.
  •  함수 및 반복문 등 특정 블록 내부에 있으면 사용이 가능합니다.
  • 언래핑된 guard문이 적용된 변수는 guard문 밖에서 사용할 수 있습니다.
  • if문을 이용한 언래핑된 변수는 적용이 안됩니다.

 

(guard 문 예시 1)

var op1 = 10
while true{
    guard op1 < 20 else{
	// 조건(op1 < 20)이 거짓일 경우 실행
        break
    }
    // 조건(op1 < 20)이 참일 경우 실행
    op1 = op1 + 10
    print(op1)
}
//결과
//20

 

(guard 문 예시 1)

func multiplay(value: Int?){
    guard let number = value, number < 10 else{
	//값이 있고 10보다 작은)이 거짓일 때 실행
        print("수가 없거나 10보다 큽니다.")
        return
    }
    print(number*5)
    //조건식이 참일 때 실행
    //number를 여기서도 사용 가능
}
multiplay(value : 3) // 조건이 참이기 때문에 3에 5를 곱한 값인 15가 출력됩니다.
multiplay(value : 15) // 조건이 10보다 크기 때문에 guard안에 있는 경고문이 출력됩니다. 
multiplay(value : nil) // nil이기 때문에 guard안에 있는 경고문이 출력됩니다.

'Swift' 카테고리의 다른 글

Swift - switch-case문  (0) 2021.10.04
Swift - if~let문 / guard~let문 비교  (0) 2021.10.04
Swift - break / continue문  (0) 2021.10.02
Swift - repeat-while문  (0) 2021.10.02
Swift - for-in문  (0) 2021.10.02
Comments