最近项目有个需求,统计某个字段每月的总量并统计出增量。
问题在于:每个月的总量不好查,没法根据某个字段来区分该条数据属于哪个月的数据。所以最后只能查根据日期来查该日期之前的所有数据。
写了个工具了,传入当前时间(如:2019-11)和所需前推的月份数量(如:6);返回dataArr[]字符串数组。
直接上代码:
```java
public static Date getDateFromDateJudice(Date date , Integer length, int type){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(type, calendar.get(type)+length);
return calendar.getTime();
}
/**
* 获取指定日期前length天数集合
* @param dateKey 当前时间月份
* @param length 月份,向前推几个月
* @return
*/
public static String[] getDateListBeforeLength(String dateKey, Integer length) throws ParseException {
String[] dateArr = new String[length];
dateArr[0] = dateKey;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Date beginDate = sdf.parse(dateKey);
for (Integer i = 1; i < length; i++) {
Date endDate = getDateFromDateJudice(beginDate, 0 - i,Calendar.MONTH);
String endKey = sdf.format(endDate);
dateArr[i] = endKey;
}
return dateArr;
}
获取系统时间为:
返回字符串数组为:
可以跨年计算哦~
记录在此,方便下次使用。
转载需要注明出处哦~
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/17146.html