繁体   English   中英

Swift - 将最后 X 个项目留在数组中

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM