swift - 下标使用方法的额外优势是什么

标签 swift methods subscript

<分区>

我正在研究 Swift 中的下标,发现通过使用方法,我们可以访问类、枚举或结构的成员元素。

那么下标还有什么优势呢?

最佳答案

与我能想到的函数相比,下标具有三个优点:

  1. 熟悉度。许多 Swift 程序员都熟悉使用 [] 访问其他语言(如 Python、C、C++ 和 Java)中的数组元素。

  2. 简洁。如果要使用函数访问集合元素,则该函数需要一个名称。即使像 at 这样的短名称(Smalltalk 使用)也需要比 [] 更多的字符。比较 array[i]array.at(i)

  3. 灵 active 。下标运算符可以允许读取和写入。您甚至可以在可变二元运算符的左侧使用下标运算符,如下所示:

    array[i] += 1
    

    如果没有下标运算符,您需要显式编写两个单独的函数调用,如下所示:

    array.at(i, put: array.at(i) + 1)
    

    或者可以使用一个带有突变闭包的函数,像这样:

    array.at(i, update: { $0 + 1 })
    

关于swift - 下标使用方法的额外优势是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55175646/

相关文章:

jupyter-notebook - Jupyter Notebook 中带数字的下标变量

ios - Facebook 通过解析登录

android - 数组方法返回数组,只有第一个值?

swift - 设置 nspopover 的位置

ruby - 需要在 Ruby 中进行前向声明

java - 方法标题中的分号预期错误

c++ - 每次调试此代码时,我都会收到 "subscript out of range error"。有人可以帮我查明错误或错误吗?

c++ - 表达式 : string subscript out of range. 属性传递问题?

ios - 当前拖动 session 处于事件状态时隐藏表格 View 中的某些行?

iOS/swift : moving between view controllers in swift