[swift] 서브스크립트
서브스크립트의 기본 형식
서브스크립트는 subscript
키워드로 정의되며, 해당 유형이 인덱싱될 때 반환될 값의 유형을 나타내는 것으로 시작합니다. 이어서 하나 이상의 매개변수를 사용하여 서브스크립트의 입력 값을 정의합니다.
subscript(index: Int) -> Int {
// 서브스크립트 구현
get {
// 값을 반환하는 코드
}
set(newValue) {
// 값을 설정하는 코드
}
}
위의 예제는 하나의 정수 매개변수를 사용하여 서브스크립트를 정의하고 있습니다. get
블록은 해당 인덱스에 저장된 값을 반환하고, set
블록은 해당 인덱스에 값을 할당합니다.
예제
다음은 서브스크립트의 간단한 예제입니다.
struct TimesTable {
let multiplier: Int
subscript(index: Int) -> Int {
return multiplier * index
}
}
let threeTimesTable = TimesTable(multiplier: 3)
print("6 곱하기 3은 \(threeTimesTable[6])") // "6 곱하기 3은 18" 출력
위의 예제에서 TimesTable
구조체는 서브스크립트를 사용하여 해당 구조체를 인덱싱했을 때 곱셈 결과를 반환합니다.
서브스크립트를 활용하면 클래스, 구조체 또는 열거형에서 사용자 정의 컬렉션과 비슷한 문법을 사용할 수 있으며, 직관적인 인덱싱 및 할당을 지원합니다.
참조: The Swift Programming Language - Subscripts