Range class

A numerical progression.

For basic usage, just provide the (exclusive) stop value - note that, by default, the range is exclusive of the stop value:

final range = Range(stop:5);
print(range.toList());

Result: [0, 1, 2, 3, 4]

Providing a start value allows for a non-zero starting point:

final range = Range(start: 1, stop:5);
print(range.toList());

Result: [1, 2, 3, 4]

Consider using the range() function if you just want to use a one-off range in a loop.

Implemented types

Constructors

Range({num start = 0, required num stop, num step = 1, bool stopExclusive = true})
Range constructor

Properties

hashCode int
The hash code for this object.
no setteroverride
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
start num
The starting value of the range (inclusive), defaults to 0
final
step num
The step progression, defaults to 1. Must be greater than 0
final
stop num
The end value of the range (exclusive)
final
stopExclusive bool
If false, the stop value is inclusive. Defaults to true
final

Methods

contains(num input) bool
True if input is between start (inclusive) and stop.
generate() Iterable<num>
Generate the values for the range.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toList() List<num>
Generate all list of all values in the range.
toMap() Map<String, dynamic>
override
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
override