Swift 下标
在类、结构体和枚举中,通过下标来访问集合、序列和列表的元素成员。这些下标用于通过索引来存储和检索值。可以使用 someArray[index] 来访问数组元素,以及使用 someDicitonary[key] 来访问字典实例中的后续成员元素。
对于单一类型,下标可以有单一到多个声明。我们可以使用相应的下标来重载传递给下标的索引值类型。下标也可以根据用户对输入数据类型声明的要求,从单一维度到多个维度的范围进行。
下标声明语法及其用法
让我们回顾计算属性。下标的语法与计算属性的语法相同。用于查询类型实例时,下标写在方括号内,其后是实例名称。下标语法与 ‘实例方法’ 和 ‘计算属性’ 语法具有相同的语法结构。使用 ‘subscript’ 关键字来定义下标,用户可以指定单个或多个带有返回类型的参数。下标可以具有读写或只读属性,并且实例使用’getter’和’setter’属性来存储和检索,就像计算属性一样。
语法
示例1
当我们使用playground运行以上程序时,我们得到以下结果 –
示例2
当我们在playground上运行上面的程序时,我们会得到以下结果−
下标选项
下标可以接受单个到多个输入参数,这些输入参数可以是任意数据类型。它们还可以使用变量和可变参数。下标不能提供默认参数值或使用任何传入输出参数。
定义多个下标被称为“下标重载”,一个类或结构可以根据需要提供多个下标定义。这些多个下标是根据在下标括号内声明的值的类型推断出来的。
当我们使用playground运行上面的程序时,我们得到如下结果−
Swift 4的下标支持为适当的数据类型声明单个参数到多个参数。该程序将’Matrix’结构声明为一个2 * 2维数组矩阵来存储’Double’数据类型。Matrix参数使用整数数据类型作为行和列的声明。
通过向初始化器传递行和列数来创建Matrix的新实例,如下所示。
矩阵的值可以通过将行和列的值传递给下标来定义,用逗号分隔,如下所示。