Метод isDateBased
Метод isDateBased класса ChronoField возвращает true, если поле представляет компонент даты (например, день, месяц, год), и false, если поле представляет компонент времени (например, часы, минуты, секунды). Метод не принимает параметров и является удобным способом проверки типа поля времени.
Импорт
import java.time.temporal.ChronoField
Синтаксис
boolean isDateBased()
Пример
Проверим, является ли поле DAY_OF_MONTH дато-ориентированным:
val res = ChronoField.DAY_OF_MONTH.isDateBased()
println(res)
Результат выполнения кода:
Boolean true
Пример
Проверим, является ли поле HOUR_OF_DAY дато-ориентированным:
val res = ChronoField.HOUR_OF_DAY.isDateBased()
println(res)
Результат выполнения кода:
Boolean false
Пример
Проверим несколько полей ChronoField и выведем результаты:
val fields = listOf(
ChronoField.YEAR,
ChronoField.MONTH_OF_YEAR,
ChronoField.HOUR_OF_DAY,
ChronoField.MINUTE_OF_HOUR
)
for (field in fields) {
val isDateBased = field.isDateBased()
println("${field.name}: $isDateBased")
}
Результат выполнения кода:
Array<String> ['YEAR: true', 'MONTH_OF_YEAR: true', 'HOUR_OF_DAY: false', 'MINUTE_OF_HOUR: false']
Пример
Используем метод isDateBased для условной логики при обработке временных полей:
val field = ChronoField.DAY_OF_WEEK
if (field.isDateBased()) {
println("${field.name} is a date-based field")
} else {
println("${field.name} is a time-based field")
}
Результат выполнения кода:
String "DAY_OF_WEEK is a date-based field"
Смотрите также
-
метод
isTimeBasedклассаChronoField,
который проверяет, представляет ли поле компонент времени -
метод
isDateBasedклассаChronoUnit,
который проверяет, основана ли единица времени на дате -
класс
ChronoField,
который представляет поля даты и времени -
класс
LocalDate,
который представляет дату без времени