Java获取N天前、N周前、N月前的日期
通过Calendar进行计算,通过SimpleDateFormat进行格式化日期。
import java.text.SimpleDateFormat;
import java.util.Calendar;
获取3天前的日期
Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
calendar.add(Calendar.DATE, -3);
String dateThreeDaysAgo = sdf.format(calendar.getTime());
System.out.println(dateThreeDaysAgo);
获取1周前的日期
Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
calendar.add(Calendar.WEEK_OF_YEAR, -1);
String result = sdf.format(calendar.getTime());
System.out.println(result);
获取1个月前的日期
Calendar calendar = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
calendar.add(Calendar.MONTH, -1);
String result = sdf.format(calendar.getTime());
System.out.println(result);
若要实现N天后、N周后、N月后,则把负变为正即可。
License:
CC BY 4.0