[英]Swift - Leave last X number items in array
我有 50 个项目的数组。 如何在没有for循环的情况下只在数组中保留最后30个项目?
您可以使用ArraySlice
:
let lastThirty = array[20...]
需要注意的是lastThirty
的类型是ArraySlice
,所以把它找回来作为一个数组,你可以这样做:
let lastThirtyArray = Array(lastThirty)
您可以在此处阅读有关ArraySlice
的更多信息。
let a1 = [1,2,3,4,5]
print(a1[2...])
所以你只需要array[20...]
或array.dropfirst(20)
你要找的是 collections 方法后缀
func 后缀(_ maxLength: Int) -> ArraySlice
它将返回 n 个元素,最多为您集合中的元素数:
let input = Array(1...100)
let last30 = input.suffix(30) // [71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.