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>
A ValueRange that is ending. Therefore, it has a discrete (as in non-continuous) range.
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Select the elements in original (natural) order.
    get(long index)
    Used by uniform random selection in a composite or nullable CountableValueRange.
    long
    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 Details

    • 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)
    • createOriginalIterator

      Iterator<T> createOriginalIterator()
      Select the elements in original (natural) order.
      Returns:
      never null