项目开发中,碰见每周更新三道题的需求,不能多于三道题
package test;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import java.util.List;public class Test {// 获得本周一与当前日期相差的天数public static int getMondayPlus() {Calendar cd = Calendar.getInstance();int dayOfWeek = cd.get(Calendar.DAY_OF_WEEK);//由于Calendar提供的都是以星期日作为周一的开始时间if (dayOfWeek == 1) {return -6;} else {return 2 - dayOfWeek;}}// 获得当前周- 周一的日期public static Long getCurrentMonday() {int mondayPlus = getMondayPlus();GregorianCalendar currentDate = new GregorianCalendar();currentDate.add(GregorianCalendar.DATE, mondayPlus);Date monday = currentDate.getTime();return monday.getTime();}// 获得当前周- 周日 的日期public static Long getPreviousSunday() {int mondayPlus = getMondayPlus();GregorianCalendar currentDate = new GregorianCalendar();currentDate.add(GregorianCalendar.DATE, mondayPlus +6);Date monday = currentDate.getTime();return monday.getTime();}public static void main(String[] args) throws Exception {Long start = Test.getCurrentMonday();Long end = Test.getPreviousSunday();//模拟查出最新的3个List<String> list = new ArrayList<String>();list.add("-07-30 23:30:01");list.add("-07-30 14:30:27");list.add("-07-31 13:50:55");boolean flag = false;for(int i=0;i<list.size();i++){Date date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(list.get(i).toString());if(date.getTime() > start && date.getTime() < end){}else{flag = true; break;}}if(flag){System.out.println("可以创建");}else{System.out.println("不能再创建");}}}