Класс ValueRange
- Все реализуемые интерфейсы:
Serializable
public final class ValueRange extends Object implements Serializable
Все экземпляры TemporalField имеют допустимый диапазон значений. Например, день месяца в формате ISO принимает значения от 1 до числа от 28 до 31. Этот класс описывает такой допустимый диапазон.
Важно учитывать ограничения этого класса. Он содержит только минимальное и максимальное значения. Внутри внешнего диапазона могут находиться недопустимые значения. Например, у необычного поля допустимыми могут быть значения 1, 2, 4, 6, 7, а диапазон при этом будет «1–7», несмотря на то, что значения 3 и 5 недопустимы.
Экземпляры этого класса не связаны с каким-либо конкретным полем.
- Требования к реализации:
- Этот класс является неизменяемым и потокобезопасным.
- С версии:
- 1.8
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
checkValidIntValue |
Проверяет, что указанное значение допустимо и помещается в int. |
long |
checkValidValue |
Проверяет, что указанное значение допустимо. |
boolean |
equals |
Проверяет, равен ли этот диапазон другому диапазону. |
long |
getLargestMinimum() |
Возвращает наибольшее возможное минимальное значение, которое может принимать поле. |
long |
getMaximum() |
Возвращает максимальное значение, которое может принимать поле. |
long |
getMinimum() |
Возвращает минимальное значение, которое может принимать поле. |
long |
getSmallestMaximum() |
Возвращает наименьшее возможное максимальное значение, которое может принимать поле. |
int |
hashCode() |
Хеш-код этого диапазона. |
boolean |
isFixed() |
Является ли диапазон значений фиксированным и полностью известным. |
boolean |
isIntValue() |
Проверяет, помещаются ли все значения диапазона в int. |
boolean |
isValidIntValue |
Проверяет, входит ли значение в допустимый диапазон и помещаются ли все значения диапазона в int. |
boolean |
isValidValue |
Проверяет, входит ли значение в допустимый диапазон. |
static ValueRange |
of |
Создает фиксированный диапазон значений. |
static ValueRange |
of |
Создает диапазон значений с переменной верхней границей. |
static ValueRange |
of |
Создает диапазон значений с полностью переменными границами. |
String |
toString() |
Представляет этот диапазон в виде String. |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
Подробное описание методов
of
public static ValueRange of(long min, long max)
Эта фабрика создает диапазон с фиксированными минимальным и максимальным значениями. Например, месяц года в формате ISO всегда принимает значения от 1 до 12.
- Параметры:
-
min— минимальное значение -
max— максимальное значение - Возвращает:
- диапазон ValueRange для min и max, не null
- Вызывает исключение:
-
IllegalArgumentException— если минимальное значение больше максимального
of
public static ValueRange of(long min, long maxSmallest, long maxLargest)
Эта фабрика создает диапазон с фиксированным минимальным значением и переменным максимальным значением. Например, день месяца в формате ISO всегда начинается с 1, но заканчивается числом от 28 до 31.
- Параметры:
-
min— минимальное значение -
maxSmallest— наименьшее максимальное значение -
maxLargest— наибольшее максимальное значение - Возвращает:
- диапазон ValueRange для min, наименьшего max и наибольшего max, не null
- Вызывает исключение:
-
IllegalArgumentException— если минимальное значение больше наименьшего максимального значения или наименьшее максимальное значение больше наибольшего максимального значения
of
public static ValueRange of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
Эта фабрика создает диапазон, в котором могут изменяться как минимальное, так и максимальное значения.
- Параметры:
-
minSmallest— наименьшее минимальное значение -
minLargest— наибольшее минимальное значение -
maxSmallest— наименьшее максимальное значение -
maxLargest— наибольшее максимальное значение - Возвращает:
- диапазон ValueRange для наименьшего min, наибольшего min, наименьшего max и наибольшего max, не null
- Вызывает исключение:
-
IllegalArgumentException— если наименьшее минимальное значение больше наименьшего максимального значения, наименьшее максимальное значение больше наибольшего максимального значения, наибольшее минимальное значение больше наибольшего максимального значения или наименьшее минимальное значение больше наибольшего минимального значения
isFixed
public boolean isFixed()
Например, день месяца в формате ISO принимает значения от 1 до числа от 28 до 31. Поскольку максимальное значение неизвестно точно, диапазон не является фиксированным. Однако для января диапазон всегда составляет от 1 до 31, поэтому он фиксирован.
- Возвращает:
- true, если набор значений фиксирован
getMinimum
public long getMinimum()
Например, день месяца в формате ISO всегда начинается с 1. Следовательно, минимальное значение равно 1.
- Возвращает:
- минимальное значение этого поля
getLargestMinimum
public long getLargestMinimum()
Например, день месяца в формате ISO всегда начинается с 1. Следовательно, наибольшее минимальное значение равно 1.
- Возвращает:
- наибольшее возможное минимальное значение для этого поля
getSmallestMaximum
public long getSmallestMaximum()
День месяца в формате ISO может содержать от 28 до 31 дня. Следовательно, наименьшее максимальное значение равно 28.
- Возвращает:
- наименьшее возможное максимальное значение для этого поля
getMaximum
public long getMaximum()
День месяца в формате ISO может содержать от 28 до 31 дня. Следовательно, максимальное значение равно 31.
- Возвращает:
- максимальное значение для этого поля
isIntValue
public boolean isIntValue()
int. Проверяется, что все допустимые значения находятся в пределах int.
Например, месяц года в формате ISO принимает значения от 1 до 12, которые помещаются в int. В отличие от него, нано-сутки в формате ISO принимают значения от 1 до 86 400 000 000 000, которые не помещаются в int.
В этой реализации используются getMinimum() и getMaximum().
- Возвращает:
- true, если допустимое значение всегда помещается в
int
isValidValue
public boolean isValidValue(long value)
Проверяется, что значение входит в сохраненный диапазон значений.
- Параметры:
-
value— проверяемое значение - Возвращает:
- true, если значение допустимо
isValidIntValue
public boolean isValidIntValue(long value)
int. Этот метод объединяет проверки isIntValue() и isValidValue(long).
- Параметры:
-
value— проверяемое значение - Возвращает:
- true, если значение допустимо и помещается в
int
checkValidValue
public long checkValidValue(long value, TemporalField field)
Проверяется, что значение входит в допустимый диапазон значений. Поле используется только для уточнения сообщения об ошибке.
- Параметры:
-
value— проверяемое значение -
field— проверяемое поле; может быть null - Возвращает:
- переданное значение
- См. также:
checkValidIntValue
public int checkValidIntValue(long value, TemporalField field)
int. Проверяется, что значение входит в допустимый диапазон и что все допустимые значения находятся в пределах int. Поле используется только для уточнения сообщения об ошибке.
- Параметры:
-
value— проверяемое значение -
field— проверяемое поле; может быть null - Возвращает:
- переданное значение
- См. также:
equals
public boolean equals(Object obj)
Сравнение выполняется по четырем значениям: минимальному, наибольшему минимальному, наименьшему максимальному и максимальному. Сравниваются только объекты типа ValueRange, для объектов других типов возвращается false.
hashCode
toString
public String toString()
String. Формат будет иметь вид «{min}/{largestMin} - {smallestMax}/{max}». Части largestMin или smallestMax вместе с соответствующей косой чертой могут быть опущены, если они совпадают с min или max.
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.