Type Method

random(in:)

Returns a random value within the specified range.

Declaration

static func random(in range: ClosedRange<Self>) -> Self
Available when RawSignificand conforms to FixedWidthInteger.

Parameters

range

The range in which to create a random value. Must be finite.

Return Value

A random value within the bounds of range.

Discussion

Use this method to generate a floating-point value within a specific range. This example creates three new values in the range 10.0 ... 20.0.

for _ in 1...3 {
    print(Double.random(in: 10.0 ... 20.0))
}
// Prints "18.1900709259179"
// Prints "14.2286325689993"
// Prints "13.1485686260762"

The random() static method chooses a random value from a continuous uniform distribution in range, and then converts that value to the nearest representable value in this type. Depending on the size and span of range, some concrete values may be represented more frequently than others.

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