星期对应的序号转换成日期
在开发时有时候需要对一周内的日期进行存储,通常出现在排班等情况,在此时,不保存日期而是保存周几在一定程度上可以简化数据,那么当取出的时候我们需要对数据还原
解决思路
在方法中获取到某一周的日期,将日期与星期下标一一对应,就能获取到我们需要的日期。为了一下给出简化版本代码(只处理本周)
private static Map<String, Object> transWeek2Date() {//可以传入周数参数进行整周的日期加减获得跨周的日期
Map<String, Object> map_WeekData = new HashMap<String, Object>();
Calendar calendar = Calendar.getInstance();
while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY) {//获取周日的日期
calendar.add(Calendar.DATE, -1);
}
for (int i = 0; i < 7; i++) {
Date date = calendar.getTime();
map_WeekData.put(i + "", date);
calendar.add(Calendar.DATE, 1);
}
return map_WeekData;
}
如果想要操作更多周数的数据,可以增加一些参数,进行跨周的数据操作,主要对Calendar.SUNDAY进行时间的整周操作,具体代码就不给出了。