Получить дату из строчки. Неправильный месяц

Получаю дату из строки:

Calendar calendar = Calendar.getInstance();
calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse("2021-03-07"));
System.out.println(calendar.get(Calendar.YEAR)+"-"+calendar.get(Calendar.MONTH));

Получаю результат: 2021-2, а нужно 2021-3

И так с каждым месяцем ( выводи на 1 меньше ) в чем проблема?


Ответы (2 шт):

Автор решения: Вася Воронцов

Такой способ предполагает меньшее количество ошибок. Из документации:

Значение месяца отсчитывается от 0. например, 0 для января.
→ Ссылка
Автор решения: De Bug
System.out.println(calendar.get(Calendar.YEAR)+"-"+(calendar.get(Calendar.MONTH)+1));
→ Ссылка