Swift Exercises
Test your Swift skills with exercises from all categories:
Exercises
Introduction3 exercises
Get Started3 exercises
Syntax3 exercises
Statements3 exercises
Output3 exercises
Output Numbers3 exercises
Comments3 exercises
Variables3 exercises
Print Variables3 exercises
Variables Multiple3 exercises
Identifiers3 exercises
Constants3 exercises
Variables Reallife3 exercises
Data Types3 exercises
Numbers3 exercises
Booleans3 exercises
Characters3 exercises
Type Casting3 exercises
Operators3 exercises
Operators: Arithmetic3 exercises
Operators: Assignment3 exercises
Operators: Comparison3 exercises
Operators: Logical3 exercises
Operators: Precedence3 exercises
Strings3 exercises
Strings: Concatenation3 exercises
Strings: Numbers3 exercises
Strings: Special Characters3 exercises
Strings: Unicode3 exercises
Arrays3 exercises
Arrays Loop3 exercises
Arrays: Slices3 exercises
Arrays: Indices & Bounds3 exercises
Arrays: Multidimensional3 exercises
Arrays Real-Life3 exercises
Ranges3 exercises
If / Else3 exercises
If3 exercises
Else3 exercises
Elseif3 exercises
If Shorthand3 exercises
Nested If3 exercises
If Logical3 exercises
If Reallife3 exercises
Switch4 exercises
While Loop4 exercises
Repeat While Loop3 exercises
While Reallife3 exercises
For Loop3 exercises
For Nested3 exercises
Foreach Loop3 exercises
For Reallife3 exercises
Break & Continue3 exercises
Collections3 exercises
Sets3 exercises
Dictionaries3 exercises
Collections: Operations3 exercises
Collections: Sorting3 exercises
Collections: Mutability3 exercises
Collections: Protocols3 exercises
Functions3 exercises
Optionals3 exercises
Enums3 exercises
Closures3 exercises
Tuples & Typealiases3 exercises
OOP3 exercises
Classes & Objects3 exercises
Structs3 exercises
Class Vs Struct3 exercises
Class Properties3 exercises
Class Methods3 exercises
Self Keyword3 exercises
Inheritance3 exercises
Polymorphism3 exercises
Protocols3 exercises
Generics3 exercises
Extensions3 exercises
Access Control3 exercises
Initializers3 exercises
Deinitializers3 exercises
Value Semantics & COW3 exercises
Equatable & Comparable3 exercises
Error Handling3 exercises
Concurrency3 exercises
Memory Management3 exercises
Swift Package Manager3 exercises
SwiftUI Intro3 exercises
UI Project Setup3 exercises
SwiftUI Layout3 exercises
UI Layout Stacks3 exercises
UI Layout Spacers Alignment3 exercises
UI Layout Frames Padding3 exercises
UI Layout Grids3 exercises
UI Layout Geometryreader3 exercises
UI Layout Safearea3 exercises
UI Layout Lazy Stacks3 exercises
SwiftUI Data Flow3 exercises
UI State3 exercises
UI Binding3 exercises
UI Observedobject3 exercises
UI Environmentobject3 exercises
UI Environment3 exercises
SwiftUI Lists & Forms3 exercises
UI List3 exercises
UI Foreach3 exercises
UI Section3 exercises
UI Form3 exercises
UI Inputs3 exercises
UI List Swipe Actions3 exercises
UI List Editmode3 exercises
UI List Styles3 exercises
SwiftUI Animations3 exercises
UI Anim Implicit3 exercises
UI Anim Explicit3 exercises
UI Anim Transitions3 exercises
UI Anim MatchedGeometry3 exercises
UI Anim Spring3 exercises
UI Anim Curves3 exercises
SwiftUI Gestures3 exercises
UI Gesture Tap3 exercises
UI Gesture Longpress3 exercises
UI Gesture Drag3 exercises
UI Gesture Composing3 exercises
UI Gesture Magnification3 exercises
UI Gesture Rotation3 exercises
SwiftUI Modifiers & ViewBuilder3 exercises
UI Modifiers3 exercises
UI Viewbuilder3 exercises
UI Custom Modifiers3 exercises
SwiftUI Previews3 exercises
UI Previews Variants3 exercises
UI Previews Darkmode3 exercises
SwiftUI Accessibility3 exercises
UI Accessibility Labels Actions3 exercises
UI Accessibility Dynamic Type3 exercises
UI Accessibility Focus3 exercises
SwiftUI Styling & Theming3 exercises
UI Color Schemes3 exercises
UI Materials3 exercises
UI Theming3 exercises
Networking (URLSession)3 exercises
UserDefaults3 exercises
Core Data3 exercises
MVVM3 exercises
SwiftUI Storage3 exercises
SwiftUI Testing3 exercises
Privacy & Permissions3 exercises
Push Notifications3 exercises
Widgets & Extensions3 exercises
Background Modes3 exercises
Core Location3 exercises
App Clips3 exercises
Keychain3 exercises
Cloudkit3 exercises
Filesystem3 exercises
Background URLSession3 exercises
MapKit3 exercises
Localization3 exercises
Accessibility3 exercises
App Privacy Listing3 exercises
In-App Purchases3 exercises
Analytics & Crash Reporting3 exercises
Testing with XCTest3 exercises
Assets & Icons3 exercises
Signing & Distribution3 exercises
TestFlight & App Store3 exercises
Ship Your First App3 exercises
The Exercise
The exercises are a mix of "multiple choice" and "fill in the blanks" questions. There are between 3 and 9 questions in each category. The answer can be found in the corresponding tutorial chapter. If you're stuck, or answer wrong, you can try again or hit the "Show Answer" button to see the correct answer.