В Java есть много классов, которые прямо связаны на сегодняшний день. Наиболее часто используемыми являются дата и календарь в рамках пакета java.util. Когда вам нужно использовать формат, вы также будете использовать java.text.simpledateformat.
Прежде всего, позвольте мне жаловаться на эту дату, и календарь на самом деле немного неловко в использовании. Я не был знаком с этим, когда впервые использовал его, и я всегда не мог сказать конкретное использование и различия между классами даты и календаря.
Более того, метод набора классов календаря имеет некоторую противодействие при установлении дат. При настройке месяца вам всегда нужно компенсировать это и вычесть 1.
Календарь cal = calendar.getInstance (); cal.set (2018, 0, 8);
По конкретным причинам, пожалуйста, обратитесь к ответу здесь: Stackoverflow: Почему январь -месяц 0 в календаре Java?
В любом случае, я терпеть не могу. Полем
Несколько дней назад было простое требование, которое должно было рассчитать возраст на основе двух дат. Я проверил Интернет и прямо отказался от трудной даты и классов календаря и непосредственно использовал java.time.localdate. Без лишних слов просто загрузите код:
Импорт java.time.localdate; открытый класс Testlocaldate {public static void main (string [] args) {localdate date1 = localdate.of (2018, 1, 6); LocalDate Date2 = localDate.of (1991, 1, 3); int age = date2.until (date1) .getyears (); System.out.println («Ты» + возраст + «лет»);); }}Результат вывода:
Тебе 27 лет.
Слегка сложные и подавляющие взаимные конверсионные вызовы между датой и классами календаря отброшены, и код также очень ясен. Разве это не очень приятно?
Java.Time - это библиотека даты и времени, недавно представленная в Java 8. Все следующие методы в пакете Java.Time.
Давайте посмотрим, как этот код вычисляет разницу во времени простым и освежающим способом:
Прежде всего, LocalDate - это неизменная класс (неизменная класс), поэтому, как и класс строки, вам не нужно использовать новый новый объект, который будет использоваться (?)
Тогда есть метод, используемый классом LocalDate для установки даты:
Государственный статический локальный балл (INT Year, Month Month, int Dayofmonth) Public Static Localdate (int Year, int Month, Int Dayofmonth)
Всего есть три перегруженных метода, два из которых перечислены здесь. Первый месяц класс - это тип перечисления, который содержит английское имя месяца, например, январь, ноябрь и т. Д.
Второй - обычная обстановка года, месяца и дня. Хорошей новостью является то, что месяц здесь начинается с 1, что означает, что вам больше не нужно вычитать 1 вручную! ! !
Ниже приведен метод, используемый классом LocalDate для сравнения дат:
Общественный период до (хронолокальдат endTateExclusifice)
Этот метод возвращает объект периода типа.
Период представляет собой период времени, которые имеют форму «2 года, 3 месяца, 4 дня». Следующий метод Getyears, который называется периодом.
Наконец, давайте посмотрим на некоторые методы получения интервалов времени в периоде:
public int getyears () public int getMonths () public int getDays ()
Эти три метода используются для получения года, месяца и дня времени соответственно. Да, это так просто.
Суммировать
Выше приведено метод реализации использования LocalDate для расчета возраста на основе дат в Java, введенной редактором. Я надеюсь, что это будет полезно для всех. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит всем вовремя!