Я работаю над Java-приложением, и у меня есть некоторая проблема с попыткой получить значение года с Дата.Почему класс getYear() Java Date возвращает неправильное значение?
Так в основном у меня следующая ситуация:
В принципе в мой код у меня есть:
Date datePrimoVersamento = sdf.parse(mappaQuote.get(1).getDatariferimentoprezzo());
Date dateMovimentoFinale = sdf.parse(mappaQuote.get(0).getDatariferimentoprezzo());
System.out.println("datePrimoVersamento: " + datePrimoVersamento + " year: " + datePrimoVersamento.getYear());
System.out.println("dateMovimentoFinale: " + " year: " + dateMovimentoFinale.getYear());
Выход есть:
datePrimoVersamento: Fri Nov 27 00:00:00 CET 2015 year: 115
dateMovimentoFinale: Mon Oct 31 00:00:00 CET 2016 year: 116
Как вы можете видеть, год из 2 даты - a , но getYear() метод возвращается мне и .
Почему? Как это возможно? Как я могу исправить эту проблему?
Почему вы не читали Javadoc из getYear()? Подсказка - он возвращает 'год, представленный этой датой, минус 1900' – Eran
Вы не должны использовать его, потому что он устарел. 'Устаревшие. Начиная с версии JDK версии 1.1, заменяемой Calendar.get (Calendar.YEAR) - 1900.' – Jens
Я думаю, что это уже четвертый раз за две недели, когда я прочитал этот вопрос. – jAC