「java两个日期差」java判断两个日期相差几个月

博主:adminadmin 2022-11-21 21:21:07 54

本篇文章给大家谈谈java两个日期差,以及java判断两个日期相差几个月对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java中两个日期怎样获取差值

import java.text.SimpleDateFormat;

import java.util.Date;

public class TestDate{

public static void main(String[] args) throws Exception{

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

format.setLenient(false);

Date date1 = format.parse("2014-10-04 10:00:00");

Date date2 = new Date();

//计算差值,分钟数

long minutes=(date2.getTime()-date1.getTime())/(1000*60);

System.out.println(minutes);

//计算差值,天数

long days=(date2.getTime()-date1.getTime())/(1000*60*60*24);

System.out.println(days);

}

}

java中如何计算出两个日期之间相差多少天

思路就是根据它们相差的毫秒数除以每天的毫秒数(60*60*24*1000),代码如下:

public static void main(String[] args) throws ParseException {

String date1="1987-01-01";

String date2="2010-01-01";

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");

Date d1=sdf.parse(date1);

Date d2=sdf.parse(date2);

long daysBetween=(d2.getTime()-d1.getTime()+1000000)/(60*60*24*1000);

System.out.println("1987-01-01 与 2010-01-01 相隔 "+daysBetween+" 天");

}

运行结果如下:

扩展资料:

Java使用以下三种方法来比较两个日期:

1、使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。

2、使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。

3、使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。

SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行

例如:

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");

这一行代码确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。

注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 24 小时制,而 hh 是 12 小时制。

以上实例编译运行结果如下:

当前时间为: 2018-09-14 10:16:34

参考资料:

Java官方API接口-Date

菜鸟教程-Java 日期时间

「java两个日期差」java判断两个日期相差几个月

java怎么计算两个日期相差几天

java可以使用计算日期的天数差,以下是详细代码:

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

public class test16 {

/**

* @param args

* @throws ParseException

*/

public static void main(String[] args) throws ParseException {

// TODO Auto-generated method stub

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

Date d1=sdf.parse("2012-09-08 10:10:10");

Date d2=sdf.parse("2012-09-15 00:00:00");

System.out.println(daysBetween(d1,d2));

System.out.println(daysBetween("2012-09-08 10:10:10","2012-09-15 00:00:00"));

}

/**

* 计算两个日期之间相差的天数

* @param smdate 较小的时间

* @param bdate 较大的时间

* @return 相差天数

* @throws ParseException

*/

public static int daysBetween(Date smdate,Date bdate) throws ParseException

{

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

smdate=sdf.parse(sdf.format(smdate));

bdate=sdf.parse(sdf.format(bdate));

Calendar cal = Calendar.getInstance();

cal.setTime(smdate);

long time1 = cal.getTimeInMillis();

cal.setTime(bdate);

long time2 = cal.getTimeInMillis();

long between_days=(time2-time1)/(1000*3600*24);

return Integer.parseInt(String.valueOf(between_days));

}

/**

*字符串的日期格式的计算

*/

public static int daysBetween(String smdate,String bdate) throws ParseException{

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

Calendar cal = Calendar.getInstance();

cal.setTime(sdf.parse(smdate));

long time1 = cal.getTimeInMillis();

cal.setTime(sdf.parse(bdate));

long time2 = cal.getTimeInMillis();

long between_days=(time2-time1)/(1000*3600*24);

return Integer.parseInt(String.valueOf(between_days));

}

}

关于java两个日期差和java判断两个日期相差几个月的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-21,除非注明,否则均为首码项目网原创文章,转载请注明出处。