
- Swift - Home
- Swift - Overview
- Swift - Environment
- Swift - Basic Syntax
- Swift - Variables
- Swift - Constants
- Swift - Literals
- Swift - Comments
- Swift Operators
- Swift - Operators
- Swift - Arithmetic Operators
- Swift - Comparison Operators
- Swift - Logical Operators
- Swift - Assignment Operators
- Swift - Bitwise Operators
- Swift - Misc Operators
- Swift Advanced Operators
- Swift - Operator Overloading
- Swift - Arithmetic Overflow Operators
- Swift - Identity Operators
- Swift - Range Operators
- Swift Data Types
- Swift - Data Types
- Swift - Integers
- Swift - Floating-Point Numbers
- Swift - Double
- Swift - Boolean
- Swift - Strings
- Swift - Characters
- Swift - Type Aliases
- Swift - Optionals
- Swift - Tuples
- Swift - Assertions and Precondition
- Swift Control Flow
- Swift - Decision Making
- Swift - if statement
- Swift - if...else if...else Statement
- Swift - if-else Statement
- Swift - nested if statements
- Swift - switch statement
- Swift - Loops
- Swift - for in loop
- Swift - While loop
- Swift - repeat...while loop
- Swift - continue statement
- Swift - break statement
- Swift - fall through statement
- Swift Collections
- Swift - Arrays
- Swift - Sets
- Swift - Dictionaries
- Swift Functions
- Swift - Functions
- Swift - Nested Functions
- Swift - Function Overloading
- Swift - Recursion
- Swift - Higher-Order Functions
- Swift Closures
- Swift - Closures
- Swift-Escaping and Non-escaping closure
- Swift - Auto Closures
- Swift OOps
- Swift - Enumerations
- Swift - Structures
- Swift - Classes
- Swift - Properties
- Swift - Methods
- Swift - Subscripts
- Swift - Inheritance
- Swift-Overriding
- Swift - Initialization
- Swift - Deinitialization
- Swift Advanced
- Swift - ARC Overview
- Swift - Optional Chaining
- Swift - Error handling
- Swift - Concurrency
- Swift - Type Casting
- Swift - Nested Types
- Swift - Extensions
- Swift - Protocols
- Swift - Generics
- Swift - Access Control
- Swift - Function vs Method
- Swift - SwiftyJSON
- Swift - Singleton class
- Swift Random Numbers
- Swift Opaque and Boxed Type
Swift - Boolean
Swift Boolean Type
Just like other programming languages, Swift supports a Boolean data type called "Bool
". A Boolean represents a logical value, either true or false. These Boolean values are used make decisions with conditional and control flow statements like if
, while
, and guard
.
Syntax
Following is the syntax of the boolean variable −
let value1 : Bool = true let value2 : Bool = false
Following is the shorthand syntax of the boolean type −
let value1 = true let value2 = false
Example of Boolean
Swift program to use boolean with logical statement.
import Foundation // Defining boolean data type let color : Bool = true // If the color is true, then if block will execute if color{ print("My car color is red") } // Otherwise, else block will execute else{ print("My car color is not red") }
Output
My car color is red
Combine Boolean with Logical Operators
In Swift, we are allowed to combine boolean with logical operators like logical AND "&&", logical OR "||" and logical NOT "!" to create more complex expressions. Using these operators, we can able to perform various conditional operations on boolean values.
Example
Swift program to combine boolean with logical operator.
import Foundation // Defining boolean data type let isUsername = true let isPassword = true let hasAdminAccess = false let isUserAccount = true // Combining boolean data type with logical AND and OR operators let finalAccess = isUsername && isPassword && (hasAdminAccess || isUserAccount) /* If the whole expression returns true then only the user gets access to the admin panel. */ if finalAccess { print("Welcome to the admin panel") } else { print("You are not allowed to access admin panel") }
The output of the above example is:
Welcome to the admin panel
Boolean Property and Method
The Bool
type provides a property called description
that returns the string representation of Boolean ("true" or "false") and a method toggle()
that inverts the Boolean value.
Example
This example demonstrates the use of property and method of Bool type:
import Foundation var isUserLoggedIn: Bool = true // The 'description' property print("User logged in (before toggle): \(isUserLoggedIn.description)") // Inverts the value using the 'toggle()' method isUserLoggedIn.toggle() // Now, printing the updated value print("User logged in (after toggle): \(isUserLoggedIn.description)")
The output of the above example is:
User logged in (before toggle): true User logged in (after toggle): false
Random Boolean Value
We can generate a random Boolean value by using the Bool.random()
method.
Example
In this example, we are generating 10 random Boolean values:
import Foundation for i in 1...10 { let randomBool = Bool.random() print("Random Bool \(i): \(randomBool)") }
The output of the above example is:
Random Bool 1: true Random Bool 2: false Random Bool 3: true Random Bool 4: true Random Bool 5: false Random Bool 6: false Random Bool 7: true Random Bool 8: false Random Bool 9: true Random Bool 10: false