字面上很难说出这个是可以干什么
因此这里描述一个现象
一个数组一般很多类似像这样
var arr = [1,2,3,5,5]
现在需要重复的名字改掉因为重复的名字可能只有那么一两个
我希望这样就能改掉 arr[[3,4]] = [4,5] //arr [1,2,3,4,5]
extension Array {
subscript(input: [Int]) -> ArraySlice<Element> {
get {
var result = ArraySlice<Element>()
for i in input {
assert(i < self.count, "Index out of range")
result.append(self[i])
}
return result
}
set {
for (index,i) in input.enumerated() {
assert(i < self.count, "Index out of range")
self[i] = newValue[index]
}
}
}
}