딕셔너리에 저장된 아이템끼리는 순서가 없지만
아이템을 튜플 형식으로 저장할 때 내부적으로
키를 바탕으로 한 해시 연산 값을 기준으로 정렬하기 때문에
이 특성을 사용하면 순회 탐색을 할 수 있음
딕셔너리를 직접 사용하여 탐색하는 방식으로 for ~ in 구문을 작성하면 순회탐색 가능
//딕셔너리의 순회 기능을 사용하여 순회 탐색을 실행함
for row in newCapital {
// 딕셔너리에서 꺼낸 키 - 값 한쌍이 담긴 row 상수를 튜플로 받는다
let (key, value) = row
print("현재 데이터는 \(key) : \(value)입니다")
}
for 구문이 반복되면 딕셔너리에 저장된 아이템이 차례대로 row 상수에 대입됨
딕셔너리는 키와 값으로 이루어진 아이템을 내부에 저장할 때 튜플 타입으로 저장하므로
순회탐색을 실행하면 차례대로 튜플 타입으로 된 키 - 값이 row 상수에 할당됨
할당된 row 상수로부터 데이터를 키와 값으로 분리해내기 위해 (key, value)의 개별 변수로 구성된
튜플로 값을 할당하는 구문이 다시 사용되고, 이 과정을 거쳐 키는 key변수에, 값은 value 변수에
할당됨
개별 튜플 상수 (key, value)를 정의하여 키-값으로 할당 받을 수 있음
for (key, value) in newCapital {
print("현재 데이터는 \(key) : \ (value)입니다")
}
row 상수에 딕셔너리 키-값 한쌍을 담은 후 이를 개별 튜플 변수로 변환하는 과정을 거쳐
키와 값으로 분리해냈지만 한번에 처리함
⚠️주의⚠️
딕셔너리 는 고유 키에 대한 해시 처리 값을 기준으로 내부 정렬하기 때문에
데이터가 우리가 생각하는 순서대로 저장되지 않을 수 있음
'Swift랑 친해지기 > Swift 책보면서 정리해보기' 카테고리의 다른 글
옵셔널(Optional) (0) | 2022.02.03 |
---|---|
[집단 자료형] 딕셔너리에 동적으로 아이템 추가하기 (Swift) (0) | 2022.01.29 |
[집단 자료형] 딕셔너리 (Swift) (0) | 2022.01.28 |
[집단자료형] 튜플 (Swift) (0) | 2022.01.27 |
[집단 자료형] 집합 연산 (Swift) (0) | 2022.01.26 |