最近在写一些数据展示的需求,表现形式有柱状图 折线图 饼状图等等之类,其中 柱状图拿到的数据 如果由于其中某一天没有相关数据,那么这一天的数据在柱状图中的表现形式就是空的,会被直接跳过,表现形式很不好。这时候 就需要根据传入的时间 依次比较拿到的时间,如果某一天的时间和查到的时间不匹配就表示这一天的数据在结果集中是没有结果的,这个时候就需要将这一天的日期加上 并且将这一天的数据结果补为0。
具体步骤我是这样做的,觉得很有意思 特意记录下来,同时防止下次可能会有用到的时候。
第一步 将查到的数据拿到,这个自己查 我不多说。
第二步 将传入的时间按照日期 依次遍历拿到每一天的日期集合。我用的是一个工具类:
public List<String> findDaysStr(String beginDate, String stopDate) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date dBegin = null;
Date dEnd = null;
try {
dBegin = sdf.parse(beginDate);
dEnd = sdf.parse(stopDate);
} catch (ParseException e) {
e.printStackTrace();
}
//存放每一天日期String对象的daysStrList
List<String> daysStrList = new ArrayList<String>();