swift-subscript

字面上很难说出这个是可以干什么
因此这里描述一个现象
一个数组一般很多类似像这样

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]
        }
    }
}
  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容