Bird
Raised Fist0
Swiftprogramming~5 mins

Default parameter values in Swift - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What are default parameter values in Swift functions?
Default parameter values allow you to specify a value for a function parameter that is used if no argument is provided when the function is called.
Click to reveal answer
beginner
How do you define a default parameter value in a Swift function?
You assign a value to the parameter in the function definition using an equals sign, like func greet(name: String = "Guest").
Click to reveal answer
beginner
What happens if you call a Swift function without providing an argument for a parameter that has a default value?
The function uses the default value specified for that parameter automatically.
Click to reveal answer
intermediate
Can default parameter values be used with multiple parameters in Swift functions?
Yes, you can assign default values to one or more parameters, and callers can omit any or all of those arguments.
Click to reveal answer
beginner
Why are default parameter values useful in Swift programming?
They simplify function calls by reducing the number of arguments needed and allow functions to be more flexible and easier to use.
Click to reveal answer
How do you specify a default value for a parameter in Swift?
ABy using 'default' keyword before the parameter
BBy declaring the parameter as optional
CBy assigning a value using '=' in the function definition
DBy calling the function with no arguments
What happens if you call a Swift function without an argument for a parameter that has a default value?
AThe function uses the default value for that parameter
BThe function throws an error
CThe parameter becomes nil
DThe function ignores the parameter
Can you have multiple parameters with default values in a Swift function?
AYes, and you can omit any or all of them when calling the function
BNo, only one parameter can have a default value
CYes, but you must always provide all arguments
DNo, default values are not supported in Swift
Which of these is a correct function definition with a default parameter in Swift?
Afunc greet(name: String default "Friend") { print("Hello, \(name)!") }
Bfunc greet(name: String = "Friend") { print("Hello, \(name)!") }
Cfunc greet(default name: String = "Friend") { print("Hello, \(name)!") }
Dfunc greet(name: String?) { print("Hello, \(name)!") }
Why might you use default parameter values in your Swift functions?
ATo prevent the function from being called
BTo force callers to always provide all arguments
CTo make parameters optional but without default values
DTo make functions easier to call with fewer arguments
Explain how default parameter values work in Swift functions and why they are useful.
Think about how you can make some function inputs optional by giving them a preset value.
You got /4 concepts.
    Write a Swift function with two parameters where one has a default value. Show how to call it with and without the default parameter.
    Use '=' to assign the default value in the function definition.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of using default parameter values in Swift functions?
      easy
      A. To make functions run faster
      B. To provide fallback values when arguments are not passed
      C. To force the caller to always provide arguments
      D. To declare variables inside the function

      Solution

      1. Step 1: Understand default parameters

        Default parameter values allow a function to use a preset value if no argument is provided.
      2. Step 2: Identify the purpose

        This makes calling the function easier and avoids errors from missing arguments.
      3. Final Answer:

        To provide fallback values when arguments are not passed -> Option B
      4. Quick Check:

        Default parameters = fallback values [OK]
      Hint: Default values fill in missing arguments automatically [OK]
      Common Mistakes:
      • Thinking default values speed up code
      • Believing default values force arguments
      • Confusing default parameters with variable declarations
      2. Which of the following is the correct way to declare a Swift function with a default parameter value?
      easy
      A. func greet(name: String) { name = "Guest"; print("Hello, \(name)!") }
      B. func greet(name: String) = "Guest" { print("Hello, \(name)!") }
      C. func greet(name: String default "Guest") { print("Hello, \(name)!") }
      D. func greet(name: String = "Guest") { print("Hello, \(name)!") }

      Solution

      1. Step 1: Review Swift default parameter syntax

        In Swift, default values are assigned using an equals sign after the parameter type.
      2. Step 2: Check each option

        func greet(name: String = "Guest") { print("Hello, \(name)!") } uses correct syntax: name: String = "Guest". Others have syntax errors.
      3. Final Answer:

        func greet(name: String = "Guest") { print("Hello, \(name)!") } -> Option D
      4. Quick Check:

        Default parameter syntax = type = value [OK]
      Hint: Use = after type to set default value [OK]
      Common Mistakes:
      • Placing default value outside parentheses
      • Using = after parameter name without type
      • Trying to assign default inside function body
      3. What will be the output of this Swift code?
      func multiply(_ a: Int, by b: Int = 2) -> Int {
          return a * b
      }
      
      print(multiply(5))
      medium
      A. Error: Missing argument for parameter 'b'
      B. 5
      C. 10
      D. 25

      Solution

      1. Step 1: Understand function parameters

        The function multiply takes two parameters: 'a' and 'b' with a default value of 2.
      2. Step 2: Evaluate the call multiply(5)

        Only 'a' is provided as 5, so 'b' uses default 2. Result is 5 * 2 = 10.
      3. Final Answer:

        10 -> Option C
      4. Quick Check:

        5 * default 2 = 10 [OK]
      Hint: If argument missing, default value is used [OK]
      Common Mistakes:
      • Expecting error for missing argument
      • Using first argument for both parameters
      • Confusing default value with multiplication factor
      4. Identify the error in this Swift function declaration:
      func greet(name: String = "User", _ age: Int) {
          print("Hello \(name), you are \(age) years old.")
      }
      medium
      A. Default parameter must be last in the parameter list
      B. Missing return type
      C. Cannot use default values with String type
      D. Function body syntax error

      Solution

      1. Step 1: Check parameter order rules

        In Swift, parameters with default values must come after parameters without defaults.
      2. Step 2: Analyze given function

        'name' has a default but appears before 'age' which has no default. This causes a compile error.
      3. Final Answer:

        Default parameter must be last in the parameter list -> Option A
      4. Quick Check:

        Default params last = correct order [OK]
      Hint: Place parameters with defaults after others [OK]
      Common Mistakes:
      • Putting default parameters before non-default ones
      • Assuming return type is mandatory for void functions
      • Confusing type restrictions on default values
      5. You want to write a Swift function formatMessage that takes a text and an optional prefix with default value "Info:". It should return a string combining prefix and text separated by a space. Which is the correct function and call to get output "Info: Hello"?
      hard
      A. func formatMessage(text: String, prefix: String = "Info:") -> String { return "\(prefix) \(text)" } print(formatMessage(text: "Hello"))
      B. func formatMessage(prefix: String = "Info:", text: String) -> String { return "\(text) \(prefix)" } print(formatMessage(text: "Hello"))
      C. func formatMessage(text: String, prefix: String) -> String { return "\(prefix) \(text)" } print(formatMessage(text: "Hello"))
      D. func formatMessage(text: String, prefix: String = "Info:") -> String { return "\(text) \(prefix)" } print(formatMessage(text: "Hello"))

      Solution

      1. Step 1: Define function with default parameter last

        Parameter with default 'prefix' must come after 'text' without default.
      2. Step 2: Check function call and output

        Calling with only 'text' uses default prefix "Info:" and returns "Info: Hello".
      3. Final Answer:

        func formatMessage(text: String, prefix: String = "Info:") -> String { return "\(prefix) \(text)" } print(formatMessage(text: "Hello")) -> Option A
      4. Quick Check:

        Default param last + call with one arg = correct output [OK]
      Hint: Default params last, call with missing arg uses default [OK]
      Common Mistakes:
      • Placing default parameter before non-default
      • Calling function without required parameters
      • Swapping order of prefix and text in output
      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