VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 887|回复: 7

求2个Date之间相差天数(在线等)

[复制链接]

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-2 21:10:01 | 显示全部楼层 |阅读模式
现在有2个时间
t1 = Mon Jan 01 00:00:00 CST 2007
t2 = Sun Dec 31 15:28:52 CST 2006
怎么求这2个日期之间相差的天数?
或者我想判断t2是否在t1之前2年之内,该怎么判断?
谢谢了!!!
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-1-2 21:54:02 | 显示全部楼层
        /**
         * 返回两个日期相隔天数
         * @param beginDate
         * @param endDate
         * @return 天数
         */
        public long getBetweenDays(Date beginDate, Date endDate) {

                long beginTime = beginDate.getTime();

                long endTime = endDate.getTime();

                long betweendays = (long) ((endTime - beginTime)
                                / (1000 * 60 * 60 * 24) + 0.5);
               
                return betweendays;
        }
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-2 22:09:01 | 显示全部楼层
那如何判断2是否在t1之前2年之内呢?谢谢
回复

使用道具 举报

0

主题

12

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-1-2 23:48:01 | 显示全部楼层
boolean before(Date when)
boolean after(Date when)
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-3 17:36:01 | 显示全部楼层
楼上的,能说的清楚些吗?
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-1-3 22:00:01 | 显示全部楼层
Date.compareTo(date)
回复

使用道具 举报

1

主题

4

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-1-6 14:57:01 | 显示全部楼层
public static long getOutWrokDays(String time1, String time2)
   {
      long days = 0;
      SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");
      try {
            Date date1 = ft.parse( time1 );
            Date date2 = ft.parse( time2 );
            days = date1.getTime() - date2.getTime();
            days = days / 1000 / 60 / 60 / 24;
          } catch (ParseException e)
          {
            e.printStackTrace();
          }
      return days;
   }
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-21 22:15:01 | 显示全部楼层
         1.public int diffDate(Calendar date1, Calendar date2) {
                return diffDate(date1.getTime(), date2.getTime());
        }

         2.public int diffDate(java.util.Date date1, java.util.Date date2) {
                return (int) ((date1.getTime() - date2.getTime()) / (24 * 60 * 60 * 1000));
        }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表