Instance Method

randomElement()

Returns a random element of the collection.

Declaration

func randomElement() -> Entity?

Return Value

A random element from the collection. If the collection is empty, the method returns nil.

Discussion

Call randomElement() to select a random element from an array or another collection. This example picks a name at random from an array:

let names = ["Zoey", "Chloe", "Amani", "Amaia"]
let randomName = names.randomElement()!
// randomName == "Amani"

This method is equivalent to calling randomElement(using:), passing in the system’s default random generator.

Complexity: O(1) if the collection conforms to RandomAccessCollection; otherwise, O(n), where n is the length of the collection.

See Also

Finding Entities

func contains(Entity) -> Bool

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

func contains(where: (Entity) -> Bool) -> Bool

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

func allSatisfy((Entity) -> Bool) -> Bool

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

var first: Entity?

The first element of the collection.

func first(where: (Entity) -> Bool) -> Entity?

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

func max(by: (Entity, Entity) -> Bool) -> Entity?

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

func min(by: (Entity, Entity) -> Bool) -> Entity?

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

func randomElement<T>(using: inout T) -> Entity?

Returns a random element of the collection, using the given generator as a source for randomness.