Swift数组中的负索引

Chewie The Chorkie

是否可以容易地使数组中的第一个索引以负数而不是0开头?

如果是这样,我将如何定义以下内容,使它们从-1开始而不是0?以及我如何获得价值?

var myIntArray:[Int] = [4, 2, 1]
var myDoubleArray:[Double] = [28, 28, 14]
var myCGFloatArray:[CGFloat] = [0.14, 0.14, 0.1]
莫伊塔巴·侯赛尼(Mojtaba Hosseini)

您可以为此定义一个自定义下标:

extension Array {
    private var customIndexOffset: Int { return -1 }

    subscript(customIndex index: Int) -> Element {
        get {
            return self[index - customIndexOffset]
        }
        set {
            self[index - customIndexOffset] = newValue
        }
    }
}

现在myIntArray[customIndex: -1] == myIntArray[0]

-更通用,更广泛的覆盖范围:

extension MutableCollection where Index == Int {
    private var customIndexOffset: Int { -2 }

    subscript(customIndex index: Int) -> Element {
        get { self[index - customIndexOffset] }
        set { self[index - customIndexOffset] = newValue }
    }
}


extension Collection where Index == Int {
    private var customIndexOffset: Int { -2 }

    subscript(customIndex index: Int) -> Element { self[index - customIndexOffset] }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

形状数组中的负索引有什么用?(Tensorflow)

来自分类Dev

在数组的负索引中添加元素?

来自分类Dev

通过负索引访问数组的元素

来自分类Dev

运行时索引为负的数组

来自分类Dev

具有负索引的多维数组访问

来自分类Dev

线性数组索引的负 X、Y 坐标?

来自分类Dev

C ++中具有负索引的类似数组的数据结构

来自分类Dev

Swift数组下标索引编制中的错误?

来自分类Dev

Swift中的数组索引超出范围

来自分类Dev

在Matlab中,R的负索引是否等效?

来自分类Dev

如何通过负偏移量寻址数组索引?

来自分类Dev

具有负索引的3D数组-C ++

来自分类Dev

JSON数组Swift的索引

来自分类Dev

在Swift 5中从数组中删除特定索引处的对象

来自分类Dev

使用swift在数组中查找某个值的索引

来自分类Dev

为什么Swift中的数组索引不返回可选值?

来自分类Dev

使用swift在数组中查找某个值的索引

来自分类Dev

iOS Swift:在数组中查找CKRecord的索引

来自分类Dev

在Swift中检查数组是否包含索引值

来自分类Dev

如何在 Swift 中获取数组的中间索引?

来自分类Dev

Chrome中滚动时画布的负Z索引问题

来自分类Dev

Python 如何在 Lists 和 String 中实现负索引

来自分类Dev

这个 C 代码中的负索引如何产生给定的输出?

来自分类Dev

数据框中的负索引是什么意思?

来自分类Dev

将列表中的负索引设置为零

来自分类Dev

致命错误:从数组swift的索引中删除时,索引超出范围(lldb)

来自分类Dev

Swift枚举作为数组索引

来自分类Dev

Swift枚举作为数组索引

来自分类Dev

Swift 3比较数组索引