Swift下标(Subscripts)

本文介绍了Swift中的下标语法,并通过具体的例子展示了如何为自定义的结构体添加下标功能,以便更方便地进行数据存取操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Swift中,类、结构体和枚举都是支持下标语法的。

什么是下标语法?使用过数组、字典的朋友都见过array[index]。通过这样的方式可以设置数据和取数,会很方便也很简洁。你可以给一个类定义多个下标,也可以在一个下标中定义一个或多个参数。

下标的关键字是subscript,常用格式如下:

subscript(index: Int) -> Int {
    get {
        // return an appropriate subscript value here
    }
    set(newValue) {
        // perform a suitable setting action here
    }
}

下面我们以数组为例,给大家介绍下标的创建和使用。

/// array结构体
struct TestArray {

    /// 内部数组
    var array = Array<Int>()

    // MARK: 下标使用
    subscript(index: Int) -> Int {
        get {
            assert(index < array.count, "下标越界")
            return array[index]
        }
        set {
            while array.count <= index {
                array.append(0)
            }
            array[index] = newValue
        }
    }
}

var array = TestArray()
array[3] = 4; // 通过下标设置值
print("\(array[3])") // 4
print("\(array[4])") // 程序停止

 


其他

参考资料

The Swift Programming Language (Swift 2.1)

文档修改记录

时间描述
2015-10-30根据 The Swift Programming Language (Swift 2.1)中的Subscripts总结

 


版权所有:http://blog.youkuaiyun.com/y550918116j

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值