Получить текущий год для переменной - Java - PullRequest
0 голосов
/ 29 апреля 2019

У меня есть три переменные, в которых мне нужен текущий год, год назад по настоящее время и два года назад по настоящее время с использованием Java.Будет ли что-то вроде этой работы?:

String DNRCurrentYear = new SimpleDateFormat("yyyy").format(new Date());

Или мне нужно сделать год int, чтобы вычесть один, а затем два года из?

Как бы я получилтекущий год минус один, а текущий год минус два?

Ответы [ 2 ]

7 голосов
/ 29 апреля 2019

Вы можете использовать класс Java 8 Year и его метод Year.minusYears():

Year year = Year.now();
Year lastYear = year.minusYears(1);
// ...

Чтобы получить значение типа int, вы можете использовать year.getValue().Чтобы получить строковое значение, вы можете использовать year.toString().

5 голосов
/ 29 апреля 2019

Использование LocalDate класс из Java 8:

public static void main(String[] args) {
    LocalDate now = LocalDate.now();
    System.out.println("YEAR : " + now.getYear());

    LocalDate oneYearBeforeDate = now.minus(1, ChronoUnit.YEARS);
    System.out.println("YEAR : " + oneYearBeforeDate.getYear());

    LocalDate twoYearsBeforeDate = now.minus(2, ChronoUnit.YEARS);
    System.out.println("YEAR : " + twoYearsBeforeDate.getYear());
}

Выход:

YEAR : 2019
YEAR : 2018
YEAR : 2017
...