Bird
Raised Fist0
Swiftprogramming~3 mins

Why Var for variables (mutable) in Swift? - Purpose & Use Cases

Choose your learning style10 modes available
The Big Idea

What if your program could remember changes just like you do, without extra effort?

The Scenario

Imagine you are writing down your daily expenses on paper. Every time you spend money, you have to erase the old total and write the new one. This takes time and can cause mistakes if you forget to update the number.

The Problem

Manually updating values is slow and easy to mess up. If you forget to change a number or write it wrong, your whole calculation becomes wrong. It's hard to keep track of changes and fix errors.

The Solution

Using var in Swift lets you create variables that can change their value easily. You just update the variable, and the program remembers the new value for you. This makes your code flexible and less error-prone.

Before vs After
✗ Before
let total = 10
// To change total, you must create a new constant or do manual recalculation
✓ After
var total = 10
total = 15 // Just update the variable directly
What It Enables

It allows your program to remember and update information as things change, just like you do in real life.

Real Life Example

Tracking your bank account balance where deposits and withdrawals change the total amount over time.

Key Takeaways

Variables let you store values that can change.

Using var in Swift makes updating values easy and safe.

This helps your programs handle real-world changing data smoothly.

Practice

(1/5)
1. What does the var keyword do in Swift?
easy
A. It creates a variable whose value can change later.
B. It creates a constant value that cannot change.
C. It defines a function.
D. It declares a type alias.

Solution

  1. Step 1: Understand the purpose of var

    The var keyword is used to declare variables that can be changed after they are set.
  2. Step 2: Compare with constants

    Unlike let, which creates constants, var allows the value to be updated.
  3. Final Answer:

    It creates a variable whose value can change later. -> Option A
  4. Quick Check:

    var means mutable variable [OK]
Hint: Remember: var means variable, value can change [OK]
Common Mistakes:
  • Confusing var with let (constant)
  • Thinking var creates constants
  • Mixing var with function declaration
2. Which of the following is the correct way to declare a mutable variable named score with initial value 10 in Swift?
easy
A. let score = 10
B. variable score = 10
C. const score = 10
D. var score = 10

Solution

  1. Step 1: Identify the keyword for mutable variables

    In Swift, var declares a variable that can change, so use var score = 10.
  2. Step 2: Check other options

    let creates a constant, variable and const are not valid Swift keywords.
  3. Final Answer:

    var score = 10 -> Option D
  4. Quick Check:

    Mutable variable uses var [OK]
Hint: Use var for variables, let for constants [OK]
Common Mistakes:
  • Using let instead of var for mutable variables
  • Using invalid keywords like variable or const
  • Missing the equals sign
3. What will be the output of this Swift code?
var count = 5
count = 10
print(count)
medium
A. 10
B. 5
C. Error: Cannot assign to constant
D. nil

Solution

  1. Step 1: Understand variable assignment

    The variable count is declared with var and initially set to 5, so it can be changed.
  2. Step 2: Update and print value

    The value is changed to 10 before printing, so print(count) outputs 10.
  3. Final Answer:

    10 -> Option A
  4. Quick Check:

    Mutable var updates value correctly [OK]
Hint: var allows value change, so print updated value [OK]
Common Mistakes:
  • Thinking var acts like let (constant)
  • Expecting original value instead of updated
  • Confusing syntax causing errors
4. Identify the error in this Swift code:
var name = "Alice"
name = 42
print(name)
medium
A. Syntax error on variable declaration
B. No error, prints 42
C. Type mismatch error when assigning 42 to name
D. Runtime error when printing

Solution

  1. Step 1: Check variable type inference

    Variable name is inferred as String because of initial value "Alice".
  2. Step 2: Assign incompatible type

    Assigning an integer 42 to a String variable causes a type mismatch error.
  3. Final Answer:

    Type mismatch error when assigning 42 to name -> Option C
  4. Quick Check:

    Swift variables keep type, cannot assign different type [OK]
Hint: Variable type fixed by first value, cannot assign different type [OK]
Common Mistakes:
  • Ignoring type mismatch errors
  • Thinking var allows any type changes
  • Confusing syntax error with type error
5. You want to keep track of a player's score that changes during the game. Which Swift code correctly declares and updates this score using var?
1. let score = 0
2. score = 10

3. var score = 0
4. score = 10

5. var score: String
6. score = 10

7. let score: Int
8. score = 10
hard
A. Lines 1 and 2
B. Lines 3 and 4
C. Lines 5 and 6
D. Lines 7 and 8

Solution

  1. Step 1: Identify mutable variable declaration

    Lines 3 and 4 declare score with var and assign 0, then update to 10, which is correct.
  2. Step 2: Check other options

    Lines 1 and 2 use let (constant), so line 2 causes error. Lines 5 and 6 declare score as String but assign integer 10, causing type mismatch error. Lines 7 and 8 use let constant and then try to assign, causing error.
  3. Final Answer:

    Lines 3 and 4 -> Option B
  4. Quick Check:

    Use var to declare and update variables [OK]
Hint: Declare with var and assign before update [OK]
Common Mistakes:
  • Using let for variables that change
  • Type mismatch with wrong type annotation
  • Confusing var and let usage
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard