develop
Subscript 본문
반응형
subscript(index: Int) -> Int {
get {
}
set {
}
}
또는
subscript(index: Int) -> Int {
// get만 있는 subscript
}
이렇게 사용할 수 있다.
Dictionary 타입에서는 key-value subscript로 구현되며 해당 key값의 옵셔널 타입을 받거나 리턴한다.
Array 타입에서는 index를 받고 해당 index의 값을 받거나 리턴한다.
예제를 보면
struct TimesTable {
let multiplier: Int
subscript(index: Int) -> Int {
return multiplier * index
}
}
let timesTable = TimesTable(multiplier: 3)
print(timesTable[1])
print(timesTable[2])
print(timesTable[3])
3
6
9
struct Animal {
let name: String
subscript(index: Int) -> String {
return name + "\(index)"
}
}
let lion = Animal(name: "사자")
print(lion[0])
print(lion[1])
print(lion[2])
let dog = Animal(name: "개")
print(dog[0])
print(dog[1])
print(dog[2])
사자0
사자1
사자2
개0
개1
개2
index 인자값에는 Int뿐만 아니라 다른 타입들을 쓸 수 있다.
리턴값도 동일하게 다른 타입들을 사용할 수 있다.
반응형
'iOS' 카테고리의 다른 글
Enumeration (0) | 2021.01.03 |
---|---|
Subscript Optional (0) | 2021.01.02 |
Swizzling (0) | 2020.12.31 |
IBDesignable, IBInspectable (0) | 2020.12.30 |
Image Face Detector 사진에서 얼굴 찾기 (0) | 2020.12.30 |
Comments