В Java 8 вы можете использовать DateTimeFormatter
вместо SimpleDateFormat
.
Вы сможете преобразовать строку в LocalDate
, которая содержит удобные методы, такие как ... minusDays()
:
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDate localDate = LocalDate.from(dateTimeFormatter.parse("23/04/2018")).minusDays(1);
System.out.println(dateTimeFormatter.format(localDate));