Swift
通过类的计算属性set和get,我们可以对索引的加减进行保护。下面是一个样例,索引index初始值是0,有效范围是0~2。不管是index++还是index--,索引都是一直在这个范围能循环遍历。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
class Test {
var _index = 0
var index: Int {
get {
return _index
}
set {
_index = newValue
if _index < 0 {
_index += 3
} else if _index > 2 {
_index -=3
}
}
}
func onNext(){
index++
}
func onPre(){
index--
}
} |