我可以这样做:
var a = [1,5,7,9,22]
a.count // 5
a[a.count - 1] // 22
a[a.endIndex - 1] // 22
但肯定有一种更漂亮的方式吗?
答案 0 :(得分:96)
截至beta5
,现在有一个first
和last
属性
除了第一个和最后一个数组获取之外,延迟集合还首先实现(如果它们可以双向索引,则为最后一个),以及isEmpty。
答案 1 :(得分:79)
更新: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
答案 2 :(得分:19)
您可以使用curl -XGET "http://127.0.0.1:9200/elasticwarehousestorage/files/_search" -d '{
"query": {
"term": {
"filetext": {
"value": "hamburgers"
}
}
}
}'
属性获取数组的最后一个元素。
代码:
last
答案 3 :(得分:8)
您还可以从阵列中获取和删除最后一个元素
removeLast()
示例:
var array = [1, 2, 3]
let removed = array.removeLast()
// array is [1, 2]
// removed is 3
取自Apple文档(此来源已过期,但您可以在此documentation page中找到示例)
答案 4 :(得分:0)
编辑swift 2.2
extension Array {
var last: Element {
return self[self.endIndex - 1]
}
}
答案 5 :(得分:0)
迅速5:
if let last = a.last {
print(last)
}