Swift 面试题
目录

Swift 中什么是下标 (Subscript)?

· 约 4 分钟读完 · 第 84 / 196 章

推荐答案

在 Swift 中,下标 (Subscript) 是一种用于访问集合、列表或序列中元素的快捷方式。通过下标,你可以像访问数组或字典中的元素一样,使用方括号 [] 来访问自定义类型的元素。下标可以定义在类、结构体和枚举中,允许你通过索引或键来获取或设置值。

本题详细解读

1. 下标的基本语法

下标使用 subscript 关键字定义,语法如下:

  • index 是下标的参数,可以是任意类型(如 Int、String 等)。
  • Element 是返回值的类型。
  • get 块用于获取值,set 块用于设置值(可选)。

2. 下标的示例

以下是一个简单的例子,展示了如何在自定义类型中使用下标:

在这个例子中,TimesTable 结构体定义了一个下标,用于返回 multiplier 与传入的 index 的乘积。

3. 下标的重载

Swift 允许你为同一个类型定义多个下标,只要它们的参数类型或数量不同即可。例如:

在这个例子中,Matrix 结构体定义了一个二维下标,用于访问和设置矩阵中的元素。

4. 下标的类型

下标不仅可以返回单一值,还可以返回元组、数组或其他复杂类型。例如:

在这个例子中,Weather 结构体定义了一个下标,用于根据城市名称返回对应的温度。

5. 下标的注意事项

  • 下标可以是只读的(只有 get 块)或可读写的(有 get 和 set 块)。
  • 下标的参数可以是任意类型,但必须与定义时的类型一致。
  • 下标可以重载,允许你为同一个类型定义多个下标。

通过使用下标,你可以使自定义类型的访问方式更加直观和简洁,类似于 Swift 内置的集合类型。