我想在日历中选择前一天。例如,如果我有02-28-2018,我需要自动设置27。
我已尝试过以下代码,但在日期为1时失败。
String currentDate = new SimpleDateFormat("dd").format(new Date());
int previousDay = Integer.parseInt(currentDate) - 1;
答案 0 :(得分:3)
在Java 8中有一种简单的方法可以做到这一点
int previousDay = LocalDate.now().minusDays(1).getDayOfMonth();
对于LocalDate
参考,请参阅here
希望这有帮助!
答案 1 :(得分:1)
如果使用Java7,您可以使用日历
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_YEAR, -1);
System.out.println(new SimpleDateFormat("dd").format(cal.getTime()));
但是对于Java8,请参阅http://www.oracle.com/technetwork/articles/java/jf14-date-time-2125367.html
也是Java 6& amp;的后端口。 Java 7:ThreeTen-Backport。