Interface CountableValueRange<T>
-
- All Superinterfaces:
ValueRange<T>
- All Known Implementing Classes:
AbstractCountableValueRange
,BigDecimalValueRange
,BigIntegerValueRange
,BooleanValueRange
,CompositeCountableValueRange
,EmptyValueRange
,IntValueRange
,ListValueRange
,LongValueRange
,NullableCountableValueRange
,TemporalValueRange
public interface CountableValueRange<T> extends ValueRange<T>
AValueRange
that is ending. Therefore, it has a discrete (as in non-continuous) range.An implementation must extend
AbstractCountableValueRange
to ensure backwards compatibility in future versions.- See Also:
ValueRangeFactory
,ValueRange
,AbstractCountableValueRange
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Iterator<T>
createOriginalIterator()
Select the elements in original (natural) order.T
get(long index)
Used by uniform random selection in a composite or nullable CountableValueRange.long
getSize()
Used by uniform random selection in a composite or nullable CountableValueRange.-
Methods inherited from interface org.optaplanner.core.api.domain.valuerange.ValueRange
contains, createRandomIterator, isEmpty
-
-
-
-
Method Detail
-
getSize
long getSize()
Used by uniform random selection in a composite or nullable CountableValueRange.- Returns:
- the exact number of elements generated by this
CountableValueRange
, always>= 0
-
get
T get(long index)
Used by uniform random selection in a composite or nullable CountableValueRange.- Parameters:
index
- always<
getSize()
- Returns:
- sometimes null (if
PlanningVariable.nullable()
is true)
-
-