”;
In Swift, you are allowed to nest an if statement inside another if statement. So when the condition of the outer if statement is true, then only controls can access the nested if statement. Otherwise, the controls skipped the nested if statement and executed the block of code present right after the outer if statement.
You are also allowed to nest an if statement inside an if-else statement or vice-versa. You can also nest as many if statements as you want but try to avoid excessive nesting because it”s hard to maintain if you encounter an error.
Syntax
Following is the syntax of the nested if statement −
if boolean_expression_1{ /* statement(s) will execute if the boolean expression 1 is true */ If boolean_expression_2{ /* statement(s) will execute if the boolean expression 2 is true */ } }
You can nest else if…else in a similar way as you have nested if statement.
Flow Diagram
The following flow diagram will show how the nested if statement works.
Example
Swift program to demonstrate the use of nested if statements.
import Foundation var varA:Int = 100; var varB:Int = 200; /* Check the boolean condition using if statement */ if varA == 100 { /* If the condition is true then print the following */ print("First condition is satisfied") if varB == 200 { /* If the condition is true then print the following */ print("Second condition is also satisfied") } } print("Value of variable varA is (varA)") print("Value of variable varB is (varB)")
Output
It will produce the following output −
First condition is satisfied Second condition is also satisfied Value of variable varA is 100 Value of variable varB is 200
Example
Swift program to find the leap year using nested if-else statements.
import Foundation let myYear = 2027 // Checking leap year if myYear % 4 == 0 { if myYear % 100 == 0 { if myYear % 400 == 0 { print("(myYear) is a leap year.") } else { print("(myYear) is not a leap year.") } } else { print("(myYear) is a leap year.") } } else { print("(myYear) is not a leap year.") }
Output
It will produce the following output −
2027 is not a leap year.
Example
Swift program to check if the given number is positive or negative even or odd number.
import Foundation let num = -11 // Checking if the given number is positive // or negative even or odd number if num > 0 { if num % 2 == 0 { print("Positive even number.") } else { print("Positive odd number.") } } else if num < 0 { if num % 2 == 0 { print("Negative even number.") } else { print("Negative odd number.") } } else { print("Number is zero.") }
Output
It will produce the following output −
Negative odd number.
”;