SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar c = Calendar.getInstance(); System.out.println(sdf.format(c.getTime())); c.add(Calendar.DAY_OF_YEAR, -1); System.out.println(sdf.format(c.getTime())); c.set(2018, 12, 20);// 月份是从0开始的,所以11表示12月 c.add(Calendar.YEAR, -1); // 年份减1 c.add(Calendar.YEAR, +1); // 年份加1 c.add(Calendar.MONTH, -1);// 月份减1 c.add(Calendar.DATE, -1);// 日期减1 c.set(Calendar.HOUR, 1);//设置时为 13点 c.set(Calendar.MINUTE, 45);//设置分为 45 c.set(Calendar.SECOND, 30);//设置 秒为30 System.out.println(sdf.format(c.getTime()));
set(int field, int value) - 是用来设置"年/月/日/小时/分钟/秒/微秒"等值
add(int field, int amount) add 可以对 Calendar 的字段进行计算。如果需要减去值,那么使用负数值就可以了,如 add(field, -value)。 可以自动修正