Spec-Zone.ru › OpenJDK 17

Класс ValueRange

java.lang.Object
java.time.temporal.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(long value, TemporalField field)
Проверяет, что указанное значение допустимо и подходит в int.
long checkValidValue(long value, TemporalField field)
Проверяет, что указанное значение допустимо.
boolean equals(Object obj)
Проверяет, равен ли этот диапазон другому диапазону.
long getLargestMinimum()
Получает наибольшее возможное минимальное значение, которое поле может принять.
long getMaximum()
Получает максимальное значение, которое поле может принять.
long getMinimum()
Получает минимальное значение, которое поле может принять.
long getSmallestMaximum()
Получает наименьшее возможное максимальное значение, которое поле может принять.
int hashCode()
Код хеширования для этого диапазона.
boolean isFixed()
Является ли диапазон значений фиксированным и полностью известным.
boolean isIntValue()
Проверяет, подходят ли все значения в диапазоне в int.
boolean isValidIntValue(long value)
Проверяет, находится ли значение в допустимом диапазоне и подходят ли все значения в диапазоне в int.
boolean isValidValue(long value)
Проверяет, находится ли значение в допустимом диапазоне.
static ValueRange of(long min, long max)
Получает фиксированный диапазон значений.
static ValueRange of(long min, long maxSmallest, long maxLargest)
Получает переменный диапазон значений.
static ValueRange of(long minSmallest, long minLargest, long maxSmallest, long maxLargest)
Получает полностью переменный диапазон значений.
String toString()
Выводит этот диапазон как String.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание методов

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.

Это проверяет, что все допустимые значения находятся в пределах целого типа данных.

Например, ISO месяц имеет значения от 1 до 12, что подходит для целого типа. В сравнении, ISO наносекунда дня имеет значения от 1 до 86 400 000 000 000, что не подходит для целого типа.

Эта реализация использует getMinimum() и getMaximum().

Возвращает:
true, если допустимое значение всегда помещается в целый тип данных

isValidValue

public boolean isValidValue(long value)
Проверяет, находится ли значение в допустимом диапазоне.

Это проверяет, находится ли значение в хранящемся диапазоне значений.

Параметры:
value - проверяемое значение
Возвращает:
true, если значение является допустимым

isValidIntValue

public boolean isValidIntValue(long value)
Проверяет, находится ли значение в допустимом диапазоне и помещается ли оно в int.

Этот метод комбинирует isIntValue() и isValidValue(long).

Параметры:
value - проверяемое значение
Возвращает:
true, если значение является допустимым и помещается в целое число

checkValidValue

public long checkValidValue(long value, TemporalField field)
Проверяет, является ли указанное значение допустимым.

Это проверяет, находится ли значение в допустимом диапазоне значений. Поле используется только для улучшения сообщения об ошибке.

Параметры:
value - проверяемое значение
field - проверяемое поле, может быть null
Возвращает:
переданное значение
См. также:
  • isValidValue(long)

checkValidIntValue

public int checkValidIntValue(long value, TemporalField field)
Проверяет, является ли указанное значение допустимым и помещается ли оно в целое число.

Это проверяет, находится ли значение в допустимом диапазоне значений и помещаются ли все допустимые значения в пределах целого типа. Поле используется только для улучшения сообщения об ошибке.

Параметры:
value - проверяемое значение
field - проверяемое поле, может быть null
Возвращает:
переданное значение
См. также:
  • isValidIntValue(long)

equals

public boolean equals(Object obj)
Проверяет, равен ли этот диапазон другому диапазону.

Сравнение основано на четырёх значениях: минимуме, наибольшем минимуме, наименьшем максимуме и максимуме. Сравниваются только объекты типа ValueRange, другие типы возвращают false.

Overrides:
equals в классе Object
Параметры:
obj - проверяемый объект, null возвращает false
Возвращает:
true, если этот диапазон равен другому диапазону
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Хеш-код для этого диапазона.
Overrides:
hashCode в классе Object
Возвращает:
соответствующий хеш-код
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

toString

public String toString()
Выводит этот диапазон в виде строки.

Формат будет '{min}/{largestMin} - {smallestMax}/{max}', где секции largestMin или smallestMax, вместе с соответствующим слэшем, могут быть опушены, если они равны min или max.

Overrides:
toString в классе Object
Возвращает:
строковое представление этого диапазона, не null

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/temporal/ValueRange.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API