Swift version: 5.1
Sets and arrays both store objects of your choosing, but they have four important differences:
As a result, you should use a set rather than an array if all the following criteria are true:
Hashabletypes, either your own or one of Swift’s built-in types likes strings and integers. Sets use hash values for fast look up of items.
You can switch between an array and a set simply enough:
let array = [1, 2, 3] let set = Set(array) let array2 = Array(set)
contains() on a set takes the same amount of time if you have one item as it does if you have one thousand items – it’s called an O(1) operation.
SPONSORED Catch bugs as soon as they happen and know exactly why a crash occurred by integrating Instabug's SDK in one minute. You will automatically receive device data, network logs, and reproduction steps with every bug and crash report.
Available from iOS – learn more in my book Pro Swift
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.