下标使用方法比方法的其他优点是什么

时间:2019-03-15 04:38:00

标签: swift methods subscript

我正在Swift中浏览下标,发现使用方法可以访问类,枚举或结构的成员元素。

那么下标还能提供什么额外的优势?

1 个答案:

答案 0 :(得分:3)

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

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

  2. Tersness。如果要使用函数访问集合元素,则该函数需要一个名称。甚至at之类的缩写(Smalltalk使用的名字)也比[]需要更多字符。将array[i]array.at(i)进行比较。

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

    array[i] += 1
    

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

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

    或者可以使用带有突变封闭的函数,如下所示:

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