Bird
Raised Fist0
iOS Swiftmobile~20 mins

Data types (Int, Double, String, Bool) in iOS Swift - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Swift Data Types Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
📝 Syntax
intermediate
1:30remaining
Swift Data Type Declaration
What is the output of this Swift code snippet?
iOS Swift
let number: Int = 10
let price: Double = 9.99
let name: String = "Coffee"
let isAvailable: Bool = true
print("\(name) costs \(price) and availability is \(isAvailable)")
ACoffee costs 9.99 and availability is True
BCoffee costs 9.99 and availability is 1
CCoffee costs 9.99 and availability is true
DCoffee costs 9.99 and availability is Yes
Attempts:
2 left
💡 Hint
Remember how Swift prints Boolean values in strings.
❓ ui_behavior
intermediate
1:30remaining
Displaying Different Data Types in UILabel
You want to show an integer, a double, and a boolean in a UILabel in Swift. Which code snippet correctly converts all values to a string for display?
Alabel.text = "Int: " + String(intValue) + ", Double: " + String(doubleValue) + ", Bool: " + String(boolValue)
Blabel.text = String(intValue) + String(doubleValue) + String(boolValue)
Clabel.text = "Int: \(intValue), Double: \(doubleValue), Bool: \(boolValue)"
Dlabel.text = "Int: " + intValue + ", Double: " + doubleValue + ", Bool: " + boolValue
Attempts:
2 left
💡 Hint
You cannot add non-string types directly to strings in Swift.
🧠 Conceptual
advanced
1:30remaining
Type Safety in Swift
Which statement best describes Swift's type safety with Int, Double, String, and Bool?
ASwift automatically converts String to Int if the string contains digits.
BSwift requires explicit conversion between Int and Double to avoid type errors.
CSwift treats Bool as a subtype of Int, so they can be used interchangeably.
DSwift allows implicit conversion between Int and Double without errors.
Attempts:
2 left
💡 Hint
Think about how Swift handles different numeric types.
❓ lifecycle
advanced
1:30remaining
Variable Initialization and Default Values
What is the default value of an uninitialized variable of type Bool in Swift?
Atrue
Bfalse
Cnil
DSwift does not allow uninitialized variables; it causes a compile error
Attempts:
2 left
💡 Hint
Swift enforces initialization before use.
🔧 Debug
expert
2:00remaining
Debugging Type Mismatch Error
What error will this Swift code produce? let value: Int = 5 let result: Double = value print(result)
iOS Swift
let value: Int = 5
let result: Double = value
print(result)
AType mismatch error: Cannot assign Int to Double without conversion
BPrints 5.0 without error
CRuntime error: Cannot convert Int to Double
DSyntax error: Missing semicolon
Attempts:
2 left
💡 Hint
Check how Swift handles assigning Int to Double variables.

Practice

(1/5)
1. Which Swift data type is used to store true or false values?
easy
A. Int
B. Double
C. String
D. Bool

Solution

  1. Step 1: Understand the data types

    Bool stores true or false values, Int stores whole numbers, String stores text, and Double stores decimal numbers.
  2. Step 2: Match the description to the type

    Since the question asks for true or false values, the correct type is Bool.
  3. Final Answer:

    Bool -> Option D
  4. Quick Check:

    Bool = true/false [OK]
Hint: True/false values always use Bool type [OK]
Common Mistakes:
  • Confusing Bool with Int
  • Using String for true/false
  • Choosing Double for boolean values
2. Which of the following is the correct way to declare a Double variable named price with value 9.99 in Swift?
easy
A. var price: Double = 9.99
B. var price = "9.99"
C. var price Double = 9.99
D. var price: Int = 9.99

Solution

  1. Step 1: Check variable declaration syntax

    In Swift, to declare a variable with a specific type, use var name: Type = value.
  2. Step 2: Identify the correct type and value

    Since 9.99 is a decimal number, the type must be Double. var price: Double = 9.99 correctly declares price as Double with 9.99.
  3. Final Answer:

    var price: Double = 9.99 -> Option A
  4. Quick Check:

    Double declaration uses var name: Double = value [OK]
Hint: Use var name: Double = value for decimals [OK]
Common Mistakes:
  • Assigning decimal to Int
  • Using quotes for numbers
  • Omitting type when needed
3. What will be the output of this Swift code?
let number: Int = 5
let text: String = "5"
let isEqual = (number == Int(text)!)
print(isEqual)
medium
A. true
B. false
C. 5
D. Compilation error

Solution

  1. Step 1: Understand the code logic

    number is an Int with value 5, text is a String "5". Int(text) converts the string "5" to integer 5.
  2. Step 2: Compare values

    number == Int(text) compares 5 == 5, which is true. So isEqual is true and print outputs true.
  3. Final Answer:

    true -> Option A
  4. Quick Check:

    5 == 5 is true [OK]
Hint: Convert String to Int before comparing [OK]
Common Mistakes:
  • Comparing Int and String directly
  • Forgetting Int(text) conversion
  • Expecting string output
4. Identify the error in this Swift code snippet:
var isActive: Bool = "true"
print(isActive)
medium
A. print() cannot print Bool values
B. Bool cannot be assigned a String value
C. Variable name is invalid
D. Missing semicolon at end of line

Solution

  1. Step 1: Analyze variable assignment

    isActive is declared as Bool but assigned the string "true" (in quotes), which is incorrect.
  2. Step 2: Understand type mismatch

    Bool must be assigned true or false without quotes. Assigning a String causes a type error.
  3. Final Answer:

    Bool cannot be assigned a String value -> Option B
  4. Quick Check:

    Bool = true/false only, no quotes [OK]
Hint: Bool values are true or false without quotes [OK]
Common Mistakes:
  • Using quotes around true/false
  • Expecting semicolon error
  • Thinking print can't show Bool
5. You want to store a user's age, height in meters, full name, and whether they are a student. Which Swift data types should you use for these variables respectively?
hard
A. String, String, Int, Bool
B. Double, Int, Bool, String
C. Int, Double, String, Bool
D. Bool, Int, Double, String

Solution

  1. Step 1: Match each data to its type

    Age is a whole number -> Int, height with decimals -> Double, full name is text -> String, student status true/false -> Bool.
  2. Step 2: Verify option matches order

    Int, Double, String, Bool lists Int, Double, String, Bool in that order, matching the variables correctly.
  3. Final Answer:

    Int, Double, String, Bool -> Option C
  4. Quick Check:

    Whole number, decimal, text, true/false [OK]
Hint: Match data meaning: whole, decimal, text, true/false [OK]
Common Mistakes:
  • Mixing Int and Double
  • Using Bool for text
  • Confusing order of types
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