Swift:Collections and data structures

Section 2.4: Collections and Data Structures


In this section, we'll explore Swift's powerful tools for organizing and managing collections of data: arrays, sets, and dictionaries. These data structures provide efficient ways to store, access, and manipulate multiple values within your programs.


Arrays: Ordered Collections


An array is an ordered collection of values of the same type. You can think of it as a list where each item has a specific position (index).


Declaration: To create an array, you enclose a comma-separated list of values within square brackets ([]) and specify the type of elements the array will hold.

Example:

Swift

var numbers: [Int] = [1, 2, 3, 4, 5]  // An array of integers

var names: [String] = ["Alice", "Bob", "Charlie"] // An array of strings


Sets: Unordered Collections of Unique Values


A set is an unordered collection of unique values of the same type. Unlike arrays, sets do not have a defined order, and each value can appear only once.


Declaration: To create a set, you enclose a comma-separated list of values within curly braces ({}) and specify the type of elements the set will hold.

Example:

Swift

var uniqueNumbers: Set<Int> = [1, 2, 3, 4, 5]   // A set of integers

var uniqueNames: Set<String> = ["Alice", "Bob", "Charlie"] // A set of strings


Dictionaries: Key-Value Pairs


A dictionary is an unordered collection of key-value pairs, where each value is associated with a unique key. You can use the key to look up its corresponding value.


Declaration: To create a dictionary, you enclose a comma-separated list of key-value pairs within square brackets ([]). Each key-value pair is separated by a colon (:).

Example:

Swift

var ages: [String: Int] = ["Alice": 25, "Bob": 30, "Charlie": 35] // A dictionary of names (keys) and ages (values)


Common Operations:


Accessing Elements: You can access elements in arrays and dictionaries using their index or key, respectively.

Adding/Removing Elements: You can add or remove elements from arrays and sets.

Modifying Elements: You can modify elements in arrays and dictionaries.

Iterating: You can use loops (e.g., for-in) to iterate over the elements in arrays, sets, and dictionaries.

Searching: You can search for specific elements in arrays and sets.

Sorting: You can sort arrays.

Set Operations: You can perform set operations like union, intersection, and difference on sets.

Key Takeaways:


Arrays are ordered collections of values of the same type.

Sets are unordered collections of unique values of the same type.

Dictionaries are unordered collections of key-value pairs.

Swift provides various operations to manipulate and work with collections.

Understanding collections and data structures is crucial for organizing and managing data effectively in your Swift programs. Whether you're building a simple to-do list app or a complex data-driven application, these tools will empower you to store, access, and manipulate data efficiently.

Course Syllabus