swift:自定义下标(subscript)

    xiaoxiao2021-03-25  111

    下标脚本(subscript)

    可以使用在类,结构体,枚举中 提供一种类似于数组或者字典通过下标来访问对象的方式

    subscript可以重载,就是一个类可以定义多个下标脚本 可以设置为只读和读写 一、语法 参数不可以是inout类型参数,且参数不能有默认值

    subscript(参数1,参数2...)->返回值{ get{ } set(newValue){ } }

    二、举例 例子一 简单的通过下标脚本访问属性

    import UIKit struct Zone{ var x : Double = 0.0 var y : Double = 0.0 var z : Double = 0.0 subscript(index : Int) -> Double?{ get{ switch index { case 0 : return x case 1 : return y case 2 : return z default : return nil } } set { guard let newValue = newValue else { return } switch index { case 0 : x = newValue case 1 : y = newValue case 2 : z = newValue default : return } } } } var zone = Zone(x: 2, y: 3, z: 4) zone.x zone[0] zone[0] = 10//只有subscript设置了set才可以通关此方法设置值 zone.x//此时的zone.x的值为10
    转载请注明原文地址: https://ju.6miu.com/read-9539.html

    最新回复(0)