Instance Method


Returns the elements of the sequence, shuffled.


func shuffled() -> [Bound]
Available when Bound conforms to Strideable and Bound.Stride conforms to SignedInteger.

Return Value

A shuffled array of this sequence’s elements.


For example, you can shuffle the numbers between 0 and 9 by calling the shuffled() method on that range:

let numbers = 0...9
let shuffledNumbers = numbers.shuffled()
// shuffledNumbers == [1, 7, 6, 2, 8, 9, 4, 3, 5, 0]

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

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

See Also

Reordering Elements

func sorted() -> [Bound]

Returns the elements of the sequence, sorted.

func sorted(by: (Bound, Bound) -> Bool) -> [Bound]

Returns the elements of the sequence, sorted using the given predicate as the comparison between elements.

func reversed() -> ReversedCollection<Range<Bound>>

Returns a view presenting the elements of the collection in reverse order.

func shuffled<T>(using: inout T) -> [Bound]

Returns the elements of the sequence, shuffled using the given generator as a source for randomness.