condition은 Bool값이 와야하며 condition이 true일때만 아래 문장이 실행된다.
let id = "root"
let password = "1234qwer"
if id == "root" { // true
print("valid Id") // "valid Id"
}
if password == "1234qwer" { // 둘다 확인해야하기때문에 논리 연산자를 사용하는게 더 알맞다.
print("valid password")
}
if id == "root" && password == "1234qwer" {
print("go to admin page")
}
if id != "root" || password != "1234qwer" {
print("incorrect value")
}
if id == "root" && password == "1234qwer" {
print("go to admin page")
} else { // 위 값이 false라고 한다면 실행된다.
print("incorrect value")
}
// 위에 있는 2개의 if문과 같은 결과가 나온다.
더 많은 조건을 추가하기 위해 else if를 사용한다.
차례대로 실행 되며 위의 값이 false일때 다음 코드를 실행하며
true가 나오는 조건에서 if 문자 종료된다. 가장 까다로운식을 가장 먼저 작성해야한다.
let num = -2
if num >= 0 {
print("Positive number or zero")
} else if num % 2 == 0 {
print("Positive even number")
} else if num % 2 == 1 {
print("Positvie odd number")
} else {
print("negative number")
}
// 하지만 양수이면서 짝수인경우에만 실행하고자한것인데 -2값인데도 논리적으로 에러가 있다.
if num >= 0 {
print("Positive number or zero")
if num % 2 == 0 {
print("Positive even number")
} else if num % 2 == 1 {
print("Positvie odd number")
}
} else {
print("negative number")
}
// 이렇게 작성하면 양수이면서 짝수인 경우나 홀수인경우를 올바르게 처리가 가능하다.
if num > 0 {
print("Positvie number")
} else if num > 10 {
print("Positvie number over 10")
} else if num > 100 {
print("Positvie number over 100")
}
// 이렇게 작성하여 가장 느슨한 값이 먼저 있게되면 우리가 원하는 값을 얻을수가 없다.
다른 if문을 확인하지 않기 떄문이다.
if num > 100 {
print("Positvie number over 100")
} else if num > 10 {
print("Positvie number over 10")
} else if num > 0 {
print("Positvie number")
}
// 이렇게 가장 까다로운 식을 먼저 작성해야 원하는 값을 얻을수 있다.