Bird
Raised Fist0
Swiftprogramming~5 mins

Associated values per case in Swift - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What are associated values in Swift enums?
Associated values let each case of an enum store additional data of different types, like carrying extra information with that case.
Click to reveal answer
beginner
How do you define an enum case with associated values in Swift?
You add parentheses after the case name and list the types of values it holds, for example: case success(data: String).
Click to reveal answer
intermediate
How do you extract associated values from an enum case in Swift?
Use a switch statement with pattern matching to bind the associated values to constants or variables.
Click to reveal answer
beginner
Can different cases of the same enum have different types of associated values?
Yes, each case can have its own unique types and number of associated values.
Click to reveal answer
beginner
Example: What does this Swift code do?
enum Result { case success(String), failure(Int) }
It defines an enum Result with two cases: success holding a String, and failure holding an Int as associated values.
Click to reveal answer
What is the purpose of associated values in Swift enums?
ATo create constants
BTo inherit from other enums
CTo define functions inside enums
DTo store extra data with each enum case
How do you declare an enum case with associated values?
Acase name = Type
Bcase name(Type)
Ccase name: Type
Dcase name -> Type
Which Swift statement is best to get associated values from an enum case?
Aif-else
Bfor loop
Cswitch
Dwhile loop
Can two enum cases have different types of associated values?
AYes, each case can differ
BNo, all must be the same
COnly if they are strings
DOnly if they have no values
What does this enum case mean?
case error(code: Int, message: String)
AAn error case with an Int and String stored
BA function named error
CA constant named error
DA variable named error
Explain what associated values are in Swift enums and how you use them.
Think about how each enum case can carry extra information.
You got /3 concepts.
    Describe how you would handle different associated values for multiple enum cases in Swift.
    Consider how to get the data out when you check the enum case.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of associated values in Swift enums?
      easy
      A. To store extra data with each enum case
      B. To define multiple enums in one declaration
      C. To create functions inside enums
      D. To inherit properties from other enums

      Solution

      1. Step 1: Understand enum cases

        Enum cases represent fixed options, but sometimes need extra data.
      2. Step 2: Role of associated values

        Associated values let each case carry extra information, like a label or number.
      3. Final Answer:

        To store extra data with each enum case -> Option A
      4. Quick Check:

        Associated values = extra data per case [OK]
      Hint: Think: extra info stored inside enum cases [OK]
      Common Mistakes:
      • Confusing associated values with raw values
      • Thinking enums can inherit properties
      • Believing enums can contain functions only
      2. Which of the following is the correct syntax to define an enum case with an associated value of type String?
      easy
      A. case name -> String
      B. case name(String)
      C. case name: String
      D. case name = String

      Solution

      1. Step 1: Recall enum case syntax with associated values

        Associated values use parentheses after the case name with the type inside.
      2. Step 2: Match syntax options

        Only 'case name(String)' uses parentheses correctly for associated values.
      3. Final Answer:

        case name(String) -> Option B
      4. Quick Check:

        Parentheses hold associated value type [OK]
      Hint: Use parentheses for associated value types [OK]
      Common Mistakes:
      • Using colon instead of parentheses
      • Using equals sign for associated values
      • Using arrow notation incorrectly
      3. What will be the output of this Swift code?
      enum Result {
          case success(String)
          case failure(Int)
      }
      
      let response = Result.success("Done")
      switch response {
      case .success(let message):
          print(message)
      case .failure(let code):
          print("Error code: \(code)")
      }
      medium
      A. Error code: Done
      B. Compilation error
      C. Error code: 0
      D. Done

      Solution

      1. Step 1: Identify enum case used

        The variable 'response' is assigned 'Result.success("Done")'.
      2. Step 2: Switch matches .success case

        The switch matches '.success(let message)' and prints the message string.
      3. Final Answer:

        Done -> Option D
      4. Quick Check:

        Matching case prints associated string [OK]
      Hint: Match enum case to print its associated value [OK]
      Common Mistakes:
      • Confusing success and failure cases
      • Expecting error code instead of message
      • Thinking code will not compile
      4. Identify the error in this Swift enum usage:
      enum Device {
          case phone(model: String)
          case tablet(model: String)
      }
      
      let myDevice = Device.phone("iPhone")
      medium
      A. Missing parentheses around associated value
      B. Enum cases cannot have associated values
      C. Cannot assign associated value without label
      D. Incorrect enum declaration syntax

      Solution

      1. Step 1: Check enum case declaration

        Cases use labeled associated values: 'phone(model: String)'.
      2. Step 2: Check enum instance assignment

        Assigning 'Device.phone("iPhone")' omits the label 'model:'.
      3. Final Answer:

        Cannot assign associated value without label -> Option C
      4. Quick Check:

        Labeled associated values require labels on assignment [OK]
      Hint: Use labels when enum cases define labeled associated values [OK]
      Common Mistakes:
      • Ignoring labels in associated values
      • Thinking parentheses are missing
      • Believing enums can't have associated values
      5. Given this enum with multiple associated values:
      enum Message {
          case text(String, Int)
          case image(url: String, size: (width: Int, height: Int))
      }
      
      let msg = Message.image(url: "photo.png", size: (width: 100, height: 200))
      switch msg {
      case .text(let content, let length):
          print("Text: \(content), length: \(length)")
      case .image(let url, let size):
          print("Image URL: \(url), size: \(size.width)x\(size.height)")
      }
      What will be printed?
      hard
      A. Image URL: photo.png, size: 100x200
      B. Text: photo.png, length: 100
      C. Image URL: photo.png, size: (100, 200)
      D. Compilation error due to tuple

      Solution

      1. Step 1: Identify enum case and associated values

        Variable 'msg' is assigned '.image' with url and size tuple.
      2. Step 2: Switch matches .image case and prints values

        Print statement accesses url and tuple's width and height correctly.
      3. Final Answer:

        Image URL: photo.png, size: 100x200 -> Option A
      4. Quick Check:

        Tuple values accessed with dot notation [OK]
      Hint: Access tuple parts with dot notation inside switch [OK]
      Common Mistakes:
      • Printing tuple as whole instead of parts
      • Confusing .text and .image cases
      • Expecting compilation error from tuple
      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