使用Swift 5时,您可以根据需要选择以下模式之一,以便从数组的最后两个元素中获取新的数组。
使用Swift,符合Collection
协议的对象具有suffix(_:)
方法。数组suffix(_:)
具有以下声明:
func suffix(_ maxLength: Int) -> ArraySlice<Element>
返回一个子序列,直到指定的最大长度,该子序列包含集合的最终元素。
用法:
let array = [1, 2, 3, 4]
let arraySlice = array.suffix(2)
let newArray = Array(arraySlice)
print(newArray) // prints: [3, 4]
作为suffix(_:)
方法的替代方法,您可以使用Array
的subscript(_:)
下标:
let array = [1, 2, 3, 4]
let range = array.index(array.endIndex, offsetBy: -2) ..< array.endIndex
//let range = array.index(array.endIndex, offsetBy: -2)... // also works
let arraySlice = array[range]
let newArray = Array(arraySlice)
print(newArray) // prints: [3, 4]