我可以做这个:
var a = [1,5,7,9,22]
a.count // 5
a[a.count - 1] // 22
a[a.endIndex - 1] // 22
但是肯定有更漂亮的方法吗?
我可以做这个:
var a = [1,5,7,9,22]
a.count // 5
a[a.count - 1] // 22
a[a.endIndex - 1] // 22
但是肯定有更漂亮的方法吗?
lastIndex
可以在Kotlin中使用var。似乎我endIndex - 1
现在必须坚持。
Answers:
更新:Swift 2.0现在包括first:T?
和last:T?
内置属性。
在需要时,可以通过提供自己的扩展来使内置的Swift API更漂亮,例如:
extension Array {
var last: T {
return self[self.endIndex - 1]
}
}
现在,您可以使用以下命令访问任何数组上的最后一个元素:
[1,5,7,9,22].last
endIndex
不需要通过引用self
。
last
属性是内置的(和一样first
)。nil
如果数组为空,则返回。
截至beta5
目前,有first
和last
属性
除了Array首先获取和最后获取之外,惰性集合还首先实现(如果它们可以双向索引,则实现最后),以及isEmpty。
您还可以从数组中获取和删除最后一个元素
removeLast()
例:
var array = [1, 2, 3]
let removed = array.removeLast()
// array is [1, 2]
// removed is 3
取自Apple文档(此来源已过期,但您可以在此文档页面中找到示例)
迅速编辑2.2
extension Array {
var last: Element {
return self[self.endIndex - 1]
}
}