Instance Method

dropLast(_:)

Returns a subsequence containing all but the specified number of final elements.

Declaration

func dropLast(_ k: Int) -> Range<Bound>
Available when Bound conforms to Strideable and Bound.Stride conforms to SignedInteger.

Parameters

k

The number of elements to drop off the end of the collection. k must be greater than or equal to zero.

Return Value

A subsequence that leaves off k elements from the end.

Discussion

If the number of elements to drop exceeds the number of elements in the collection, the result is an empty subsequence.

let numbers = [1, 2, 3, 4, 5]
print(numbers.dropLast(2))
// Prints "[1, 2, 3]"
print(numbers.dropLast(10))
// Prints "[]"

Complexity: O(1) if the collection conforms to RandomAccessCollection; otherwise, O(k), where k is the number of elements to drop.

See Also

Excluding Elements

func dropFirst(Int) -> Range<Bound>

Returns a subsequence containing all but the given number of initial elements.

func drop(while: (Bound) -> Bool) -> Range<Bound>

Returns a subsequence by skipping elements while predicate returns true and returning the remaining elements.

func popFirst() -> Bound?

Removes and returns the first element of the collection.

func popLast() -> Bound?

Removes and returns the last element of the collection.

func removeFirst() -> Bound

Removes and returns the first element of the collection.

func removeFirst(Int)

Removes the specified number of elements from the beginning of the collection.

func removeLast() -> Bound

Removes and returns the last element of the collection.

func removeLast(Int)

Removes the given number of elements from the end of the collection.