Instance Method

lastIndex(of:)

Returns the last index where the specified value appears in the collection.

Declaration

func lastIndex(of element: MLDataTable.Row) -> Int?

Parameters

element

An element to search for in the collection.

Return Value

The last index where element is found. If element is not found in the collection, this method returns nil.

Discussion

After using lastIndex(of:) to find the position of the last instance of a particular element in a collection, you can use it to access the element by subscripting. This example shows how you can modify one of the names in an array of students.

var students = ["Ben", "Ivy", "Jordell", "Ben", "Maxime"]
if let i = students.lastIndex(of: "Ben") {
    students[i] = "Benjamin"
}
print(students)
// Prints "["Ben", "Ivy", "Jordell", "Benjamin", "Max"]"

Complexity: O(n), where n is the length of the collection.

See Also

Finding Rows

func contains(MLDataTable.Row) -> Bool

Returns a Boolean value indicating whether the sequence contains the given element.

func contains(where: (MLDataTable.Row) -> Bool) -> Bool

Returns a Boolean value indicating whether the sequence contains an element that satisfies the given predicate.

func allSatisfy((MLDataTable.Row) -> Bool) -> Bool

Returns a Boolean value indicating whether every element of a sequence satisfies a given predicate.

func first(where: (MLDataTable.Row) -> Bool) -> MLDataTable.Row?

Returns the first element of the sequence that satisfies the given predicate.

func firstIndex(of: MLDataTable.Row) -> Int?

Returns the first index where the specified value appears in the collection.

func firstIndex(where: (MLDataTable.Row) -> Bool) -> Int?

Returns the first index in which an element of the collection satisfies the given predicate.

func last(where: (MLDataTable.Row) -> Bool) -> MLDataTable.Row?

Returns the last element of the sequence that satisfies the given predicate.

func lastIndex(where: (MLDataTable.Row) -> Bool) -> Int?

Returns the index of the last element in the collection that matches the given predicate.

func min(by: (MLDataTable.Row, MLDataTable.Row) -> Bool) -> MLDataTable.Row?

Returns the minimum element in the sequence, using the given predicate as the comparison between elements.

func max(by: (MLDataTable.Row, MLDataTable.Row) -> Bool) -> MLDataTable.Row?

Returns the maximum element in the sequence, using the given predicate as the comparison between elements.