5.1.1 배열 순회 탐색
순서가 있는 데이터를 처음부터 마지막까지 차례대로 읽어 들이는 것을 순회 탐색이라고 합니다. 순회 탐색에는 주로 반복문이 사용되는데, 반복문의 특성상 비교적 간단하게 데이터를 순회할 수 있는 방법을 제공하기 때문입니다. 배열 또한 순서가 있는 데이터이므로 반복문을 사용하여 순회 탐색할 수 있습니다.
배열의 순회 특성, 즉 이터레이터를 이용하여 순회 탐색을 합니다.
앞에서 우리는 for ~ in 구문에 순번을 가진 범위 데이터를 넣으면 데이터의 크기만큼 반복 실행되는 특성을 학습했습니다. 이 특성은 배열에도 그대로 적용됩니다. 따라서 for ~ in 구문에 배열 데이터를 직접 넣으면 간편하게 배열을 순회할 수 있습니다.
var cities = ["Seoul", "New York", "LA", "Santiago"]
// 배열의 순회 특성을 사용하여 탐색
for row in cities {
print("배열 원소는 \(row)입니다")
}
배열 원소는 Seoul입니다
배열 원소는 New York입니다
배열 원소는 LA입니다
배열 원소는 Santiago입니다
순회 특성을 이용하여 배열을 탑색하면 루프 상수에 담기는 값은 현재의 인덱스 값이 아니라 배열 아이템 자체이므로, 몇 번째 아이템인지 인덱스를 바로 알기 어렵습니다. 이때는 firstIndex(of:)를 사용하면 아이템을 통해 인덱스 값을 역으로 찾을 수 있습니다.
var cities = ["Seoul", "New York", "LA", "Santiago"]
for row in cities {
let index = cities.firstIndex(of: row) // 배열의 인덱스를 확인하여 index 상수에 대입
print("\(index!)번째 배열 원소는 \(row)입니다")
}
0번째 배열 원소는 Seoul입니다
1번째 배열 원소는 New York입니다
2번째 배열 원소는 LA입니다
3번째 배열 원소는 Santiago입니다
Last updated