Swift

Conditional Statement - if 구문

728x90

안녕하세요:)

 

오늘은 조건문에 대해서 알아보도록 하겠습니다. 

조건문은 프로그램에서 하나 또는 그 이상의 조건값에 따라 특정 구문을 실행하도록 프로그램의 흐름을 분기하는 역할을 합니다.

 

Swift에서 제공하는 조건문은 크게 세 가지입니다.

  • if 구문
  • switch 구문
  • guard 구문

그럼 if 구문부터 알아보도록 할게요!

 

< if 구문 >

  • if 구문은 하나 또는 그 이상의 조건을 평가하고 그 결과에 따라 코드 블록의 실행 여부를 결정하는 것이 if 조건문입니다.
  • if 조건문은 조건의 참과 거짓을 판단하고 코드를 실행해야 합니다.
  • 조건문은 반드시 Bool 타입의 true, false를 판단할 수 있는 형태의 구문이여야 합니다.
  • condition이 true인 경우 코드 블록 내부의 구문이 실행됩니다.
  • condition이 false인 경우 코드 블록을 빠져나가 if 블록 다음에 위치한 코드를 실행합니다.

그럼 코드를 통해서 하나하나 확인해보도록 할까요?

if condition { // condition == Boolean expr 
    code
}

if 조건문의 condition은 반드시 Boolean expr 이 와야 합니다.

var age = 21

if age > 20 {
    print("성인!")
} // 성인!

if 블록 뒤에 else 블록을 추가할 수 있습니다.

var adult = 19
var age = 15

if age < adult {
    print("당신은 미성년자!!")
} else {
    print("당신은 성인")
} // "당신은 미성년자!!"

 

그리고 if 블록 안에 if 블록을 얼마든지 선언 가능할 수 있습니다.

확인해 볼까요?

let num = Int.random(in: 0...100)

if num.isMultiple(of: 2) {
    print("2의 배수")
    
    if num.isMultiple(of: 3) {
        print("이면서 3의 배수")
    }

    if num.isMultiple(of: 6) {
        print("이면서 6의 배수")
    }
}

num에서 0부터 100까지의 랜덤 숫자를 뽑고 난 후 2,3,6의 배수를 확인하는 코드입니다.

실행할 때마다 결과가 변경돼요!!

 

< else if >

  • else if 블록은 if 블록의 condtion이 false인 경우 실행되고 else if의 condition이 true인 경우 실행됩니다.
  • else if 블록의 condition이 false인 경우 else 블록이 실행됩니다.
  • else if 블록은 계속해서 추가할 수 있습니다.
  • if 문안에 if 문은 얼마든지 선언 가능합니다.
  • 가장 까다로운 조건이 가장 먼저 와야 합니다.
if condintion {
   statement 
} else if condition {  // if블록의 조건이 false이면 else if 블록이 실행되고 condition을 판단합니다.
   statement
} else {         //else if블록의 condition이 false인 경우 실행됩니다.
   statement
}

var adult = 19
var age = 15
var gender = "F"

if gender == "M" && age > adult{
    print("남자, 성인입니다!")
} else if gender == "M" && age < adult {
    print("남자, 미성년자입니다!")
} else if gender == "F" && age > adult {
    print("여자, 성인입니다!")
} else if gender == "F" && age < adult {
    print("여자 미성년자입니다!")
} else {
    print("남자와 여자 어느 쪽에도 속하지 않습니다")
} // "여자 미성년자입니다!"

오늘은 if 조건문에 대해서 알아보았습니다.

도움이 되셨나요?

 

다음 시간에는 switch 문에 대해서 알아보도록 하겠습니다

 

감사합니다:)

728x90

'Swift' 카테고리의 다른 글

Conditional Statement - guard문  (0) 2020.10.29
Conditional Statement - switch문  (0) 2020.10.25
Operator  (0) 2020.10.23
Type Inference & Annotation & Conversion  (0) 2020.10.23
DateType with Memory  (0) 2020.10.21