java里面 date类型减去date类型怎么得到天数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java里面 date类型减去date类型怎么得到天数相关的知识,希望对你有一定的参考价值。

同上 先谢谢了
返回值最好是int的

那个方法不对 SimpleDateFormat
20070827 - 20070902 = -75
我晕啊

看你要得到的是什么天数。

如果是带时间的且24小时算一天:

Calendar c = Calendar.getInstance();

c.setTime(d1);
long l1 = c.getTimeInMillis();

c.setTime(d2);
long l2 = c.getTimeInMillis();

return (l2 - l1) / (1000 * 60 * 60 * 24);

或者你是想得到除去时间的日期差别:

Calendar c = Calendar.getInstance();

c.setTime(d1);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
long l1 = c.getTimeInMillis();

c.setTime(d2);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);
long l2 = c.getTimeInMillis();

return (l2 - l1) / (1000 * 60 * 60 * 24);

恩,思想简单了一把。用方法2吧。返回肯定整数。
参考技术A 直接用sql语句
datediff(dd,date1,date2)

以上是关于java里面 date类型减去date类型怎么得到天数的主要内容,如果未能解决你的问题,请参考以下文章

我要获得java date类型的日期对象 怎么搞

java 怎么得到timestamp的类型的当前时间

在 Athena 中是不是有任何函数可以使 date 减去 bigint 类型?

oracle把查两个日期相减的天数变成数字类型

在使用jdbc 里面出现了日期数据转换错误,java.util.date 类型的数据怎样转换成java.sql.date 类型。

json传递的date类型如何识别?并显示?