java 时间处理 获取周的第一天 最后一天,月的第一天和最后一天:
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date()); //设置当前时间
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdfall=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//获取天开始时间和结束时间
startDate=sdf.parse(sdf.format(calendar.getTime()));
endDate=sdfall.parse(sdf.format(calendar.getTime())+" 23:59:59");
//获取当前周的一天后最后一天
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(Calendar.DAY_OF_WEEK,calendar.getFirstDayOfWeek());
startDate=sdf.parse(sdf.format(calendar.getTime()));
calendar.set(Calendar.DAY_OF_WEEK,calendar.getFirstDayOfWeek()+6);
endDate=sdfall.parse(sdf.format(calendar.getTime())+" 23:59:59");
//获取当前月的第一天和最后一天
calendar.set(calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH), 1);
startDate=sdf.parse(sdf.format(calendar.getTime()));
calendar.roll(Calendar.DATE, -1);
endDate=sdfall.parse(sdf.format(calendar.getTime())+" 23:59:59");