Operator

..<(_:)

Returns a partial range up to, but not including, its upper bound.

Declaration

prefix static func ..< (maximum: Unicode.Scalar) -> PartialRangeUpTo<Unicode.Scalar>

Parameters

maximum

The upper bound for the range.

Discussion

Use the prefix half-open range operator (prefix ..<) to create a partial range of any type that conforms to the Comparable protocol. This example creates a PartialRangeUpTo<Double> instance that includes any value less than 5.0.

let upToFive = ..<5.0

upToFive.contains(3.14)       // true
upToFive.contains(6.28)       // false
upToFive.contains(5.0)        // false

You can use this type of partial range of a collection’s indices to represent the range from the start of the collection up to, but not including, the partial range’s upper bound.

let numbers = [10, 20, 30, 40, 50, 60, 70]
print(numbers[..<3])
// Prints "[10, 20, 30]"

See Also

Creating Ranges of Scalars

static func ... (Unicode.Scalar) -> PartialRangeFrom<Unicode.Scalar>

Returns a partial range extending upward from a lower bound.

static func ... (Unicode.Scalar) -> PartialRangeThrough<Unicode.Scalar>

Returns a partial range up to, and including, its upper bound.

static func ... (Unicode.Scalar, Unicode.Scalar) -> ClosedRange<Unicode.Scalar>

Returns a closed range that contains both of its bounds.

static func ..< (Unicode.Scalar, Unicode.Scalar) -> Range<Unicode.Scalar>

Returns a half-open range that contains its lower bound but not its upper bound.