一、代码
public static void main(String[] args) {Calendar cal = new GregorianCalendar();// 每周第一天(周一)cal.setFirstDayOfWeek(Calendar.MONDAY);cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());Date monday = cal.getTime();String format = new SimpleDateFormat("yyyy-MM-dd").format(monday);System.out.println(format + " 00:00:00");// 每周第五天(周五)cal.setFirstDayOfWeek(Calendar.MONDAY);cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek() + 4);Date friday = cal.getTime();format = new SimpleDateFormat("yyyy-MM-dd").format(friday);System.out.println(format + " 00:00:00");// 每月第一天cal.set(Calendar.DAY_OF_MONTH, 1);Date dayMonthStart = cal.getTime();format = new SimpleDateFormat("yyyy-MM-dd").format(dayMonthStart);System.out.println(format + " 00:00:00");}
二、API
// 给定一周的第一天是周几(美国、非洲周天;法国、中国周一)setFirstDayOfWeek(int value);// 设置Calendar时间(年、月、日都可通过指定值设置)set(int field, int value)
三、补充
Calendar cal = new GregorianCalendar(); //直接创建Calendar cal = Calendar.getInstance(); // 工厂方法
Calendar类实现了公历⽇历,GregorianCalendar是Calendar类的⼀个具体实现。Calendar 的
getInstance()⽅法返回⼀个默认⽤当前的语⾔环境和时区初始化的GregorianCalendar对象。
