柏油路留不下脚印 2018-03-19 12:02 采纳率: 0%
浏览 2187
已结题

对java list 中的日期进行分段获取

在 java list中,存放了一段范围的日期对象,例如:

 [
'2018-03-01 00:00:00',
'2018-03-02 00:00:00',
'2018-03-03 00:00:00',
'2018-03-04 00:00:00',

'2018-03-10 00:00:00',
'2018-03-11 00:00:00',
'2018-03-12 00:00:00',

'2018-03-14 00:00:00',
'2018-03-15 00:00:00',
'2018-03-16 00:00:00'
]

有一个周期类:

 class Period{
      private Date startDate;
            private Date endDate;
 }

现在想要实现的效果是:获得 list 中每一段连续的日期,并将每一段连续的日期第一个日期作为 start date,最后一个日期作为 end date。比如:

 [
 '2018-03-01 00:00:00',
'2018-03-02 00:00:00',
'2018-03-03 00:00:00',
'2018-03-04 00:00:00'
]
上面这段日期对应的 Period 的实体的start date 为 2018-03-01 00:00:00, end date 为 2018-03-04 00:00:00

不知道用什么算法能解决此问题。

谢谢各位大神帮忙!

  • 写回答

3条回答 默认 最新

  • sinat_25461811 2018-03-19 12:40
    关注

    转成map备用。然后排序(有可以排序的方法),从小到大排序,排序后取第一条,从第一条的基础上加上一天的时间,然后去map里看看有没有,如果有就用放到另一个集合中,并且在加了一天时间的数据上继续加一天然后继续找,如果找不到了,就看看上一条是第几条,然后再这个条数+1找到下一条,然后再加一天。。。。循环下去

    评论

报告相同问题?

悬赏问题

  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛