Swift 컬렉션: Array, Dictionary, Set
순서, 키와 값, 중복 허용 여부를 기준으로 Swift의 Array, Dictionary, Set을 비교하고 기본적인 추가·조회·삭제 방법을 정리합니다.

Swift의 대표적인 컬렉션은 Array, Dictionary, Set이다. 저장할 데이터에 순서가 필요한지, 키로 찾아야 하는지, 중복을 허용할지에 따라 선택한다.
Array: 순서가 있는 목록
var numbers: [Int] = []
numbers.append(3)
numbers.append(10)
numbers[0] = 7
numbers.contains(10) // true
numbers.removeLast()
Array는 순서를 유지하고 정수 인덱스로 접근하며 같은 값을 여러 번 저장할 수 있다. 유효하지 않은 인덱스 접근은 실행 중 오류를 만든다.
Dictionary: 키와 값의 연결
var words: [String: String] = [:]
words["elephant"] = "코끼리"
let value = words["elephant"] // String?
words.removeValue(forKey: "elephant")
키에 대응하는 값이 없을 수 있으므로 조회 결과는 옵셔널이다.
Set: 중복 없는 집합
let a: Set<Int> = [1, 2, 3, 4]
let b: Set<Int> = [2, 4, 6]
a.union(b)
a.intersection(b)
a.subtracting(b)
Set은 순서를 보장하지 않고 중복을 허용하지 않는다. 목록의 위치가 중요하면 Array, 키로 값을 찾으면 Dictionary, 고유한 값과 포함 여부가 중요하면 Set을 선택한다.