如何从 java 中存储日期的给定字符串字段中减去 X 天?

How to subtract X days from a given string field storing Date in java?

我有一个返回日期值的字符串字段。我正在尝试将其转换为日期格式,然后从中减去 30 天。

String extractDate; //2020-11-13 is the value
Date dateFormat= (Date) new SimpleDateFormat("yyyy/MM/dd").parse(onlyDate); //cannot parse Date error
GregorianCalendar cal = new GregorianCalendar();
cal.add(dateFormat, -30);

如何更好地执行此操作?

Date 正在逐步淘汰,有新的 类 如果您同意可以使用(即不是强制使用 Date)。例如:

        String extractDate = "2020-11-13";
        LocalDate date = LocalDate.parse(extractDate);
        LocalDate newDate = date.minusDays(30);
        System.out.println(newDate);