13. 下标

文章目录
  1. 1. 下标语法
  2. 2. 下标用法
  3. 3. 下标选项
  1. Subscript Syntax
  2. Subscript Usage
  3. Subscript Options

你可以为单个类型定义多个下标,并根据传递给下标的索引值的类型,选择要使用的相应下 标进行重载。 下标不限于单个维度,你可以定义具有多个输入参数的下标以满足你自定义类 型的需求。

下标语法

使用下标, 让你可以通过在实例名称后面的方括号中写入一个或多个值来查询类的实例。它们 的语法类似于实例方法和计算属性语法。使用 subscript 关键字定义下标,并且和实例 方法类似,可以指定一个或多个输入参数和返回类型。与实例方法不同,下标可以是读写或 只读。和计算属性类似, 读写是由 getter 和 setter 方法实现的

1
2
3
4
5
6
7
8
subscript(index: Int) -> Int {
get {
// 在这⾥里里返回⼀一个对应下标的值
}
set(newValue) {
// 在这⾥里里执⾏行行对应的赋值操作
}
}

与只读计算属性一样,你可以通过删除 get 关键字以及大括号来简化只读下标的声明

1
2
3
subscript(index: Int) -> Int { 
// 在这⾥里里返回⼀一个对应下标的值
}

下标用法

下标通常被用来作为访问集合、列表或序列中的元素的快捷方式.

Swift 的 Dictionary 类型将其键值作为下标实现并返回一个可选类型

下标选项

下标可以设置任意数量的输入参数,这些输入参数也可以是任意类型。 同时,下标也可以返 回任何类型。 下标可以使用可变参数,但它们不能使用输入输出参数或是提供默认参数值。