java如何实现取两个时间内,指定时间的个数

比如用户选择两个日期带十分秒的,指定时间点12点15点17点19点,四个时间点,如何计算时间点个数
比如说你的吃饭时间,一天中有 8-12-18三个时间点要吃饭,我任意选择两个时间范围,比如 2012-06-12 07:58:22 到 2012-06-15 17:30:12 之间,这个时间段中 我第一次吃饭的时间是什么时候?最后一次吃饭是什么时候?我一共要吃多少次饭?

时间点没有规律的,整天的数量好计算,不足一天的情况不好处理,还要计算第一个时间点的当前时间是多少,最后一个时间点的当前时间是多少?
情况比较复杂。愿意贴代码的加分
8-12-18中间用“-”断开的,可以拆分成数组取到三个时间点
8:00 、12:00 、18:00
首次时间 07:58:22小于8:00说明第一次吃饭的时间是 2012-06-12 08:00:00
String time[] = times.split("-");

得加个事件处理,只要当控件值变了,就得执行这个方法,不知道你明白的意思么?

long day = 0;
Date fisrt = (Date) pkSQSJ.getValue(); //pksqsj是控件的名称
Date end = (Date) pkYCSJ.getValue(); //pksqsj是控件的名称

day = (end.getTime() - fisrt.getTime()) / (24 * 60 * 60 * 1000); // 时间间隔追问

这样不行,必须要通过计算来实现时间点个数,感觉很简单,第一天不足24小时找时间点个数,最后一天不足一小时找时间点个数,加上中间的天数乘以每天的时间点个数,所有的时间点的和
但是要取第一个时间点的时间是多少,最后一个时间点的时间是多少?有可能第一天没有时间点。。。。反正情况比较复杂。。。愿意贴代码实现的加分

追答

还是没太明白你的意思。可以截个图,说的明白点么?

追问

很简单的例子比如说你的吃饭时间,一天中有 8-12-18三个时间点要吃饭,我任意选择两个时间范围,比如 2012-06-12 07:58:22 到 2012-06-15 17:30:12 之间,这个时间段中 我第一次吃饭的时间是什么时候?最后一次吃饭是什么时候?我一共要吃多少次饭?能理解吗?

追答

明白你的意思,但是个人能力有限,不好意思

追问

不是很难吧?怎么就没有人愿意给点精彩的java代码瞧瞧呢?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-02
17 - 12 - 1
就取两个时间的小时数相减再减1吧
第2个回答  2012-07-02
没啥好办法,整天的肯定是包含4个的。
不足一天的,只能逐个判断了。
相似回答