我只想要倒数第二个元素,而不是最后两个元素,如下所示:
let streets = ["Adams", "Bryant", "Channing", "Douglas", "Evarts"]
let penultimate = streets.suffix(2)
print(penultimate) // ["Douglas", "Evarts"]
Run Code Online (Sandbox Code Playgroud)
另外,我不想使用语法streets[3],因为数组不断地填满条目。
您可以简单地删除集合的最后一个元素并返回结果的最后一个元素:
extension BidirectionalCollection {
var elementBeforeLast: Element? {
return dropLast().last
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
if let elementBeforeLast = streets.elementBeforeLast {
print(elementBeforeLast) // "Douglas"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1385 次 |
| 最近记录: |