5.1 배열
배열(Arrays)은 일련의 순서를 가지는 리스트 형식의 값을 저장하는 데에 사용되는 자료형으로, 약간씩의 차이는 있지만 많은 프로그래밍 언어가 공통적으로 제공하는 자료형이기도 합니다. 배열에 입력되는 개별 아이템들은 모두 각각의 순서가 있는데, 이 순서를 일련번호, 즉 인덱스(Index)라고 합니다. 배열에서는 인덱스를 사용하여 배열 내 아이템을 읽어올 수 있습니다. 인덱스는 정수로 이루어지며, 0부터 시작하여 아이템이 추가될 때마다 차례대로 증가하는 것이 특징입니다.
배열에서 인덱스는 순서대로 할당되며, 중간에 값을 생략하거나 건너뛰는 경우는 없습니다. 인덱스에 연결된 아이템이 삭제 되더라도 인접한 다음 아이템들이 차례대로 앞으로 이동하면서 빈 인덱스를 채워 넣습니다. 배열 처음이나 중간에 있는 아이템이 삭제되어도 실제로 사라지는 인덱스는 가장 마지막 인덱스입니다.
이런 특성 때문에 인덱스는 배열의 아이템과 생사고락을 같이하는 고유 코드 역할을 할 수 없습니다. 그저 아이템의 순서를 나타내고, 아이템이 있는 위치를 가리키는 역할만 할 뿐입니다. 중복된 인덱스가 없고 배열의 아이템이 바뀌지 않는 이상 인덱스와 이이템 간의 연결이 바뀌지 않지만, 배열 내에서 아이템을 삭제하면 그 다음 아이템과 연결되므로 사용 시 주의해야 합니다.
스위프트에서 사용하는 배열 자료형은 몇 가지 특징이 있습니다.
배열에 저장할 아이템의 타입에는 제약이 없지만, 하나의 배열에 저장하는 아이템 타입은 모두 같아야 함
선언 시 배열에 저장할 아이템 타입을 명확히 정의해야 함
배열의 크기는 동적으로 확장할 수 있음
정적 방식 배열 정의
[ 아이템1, 아이템2, 아이템3, ... ]
var cities = ["Seoul", "New York", "LA", "Santiago"]
Last updated