java利用Calendar如何计算两个日期只差

java利用Calendar如何计算两个日期只差,第1张

Java创建一个日历对象,需要引入javautil包,用当前时间初始化日历时间,计算两个日期之间相隔的天数,实例演示了2014年10月1日和1949年10月1日中间相隔的天数,计算方法如下:

import javautil;

public class CalendarDemo {

public static void main(String args[]) {

Calendar calendar = CalendargetInstance(); //创建一个日历对象。

calendarsetTime(new Date()); //用当前时间初始化日历时间。

String year = StringvalueOf(calendarget(CalendarYEAR));

String month = StringvalueOf(calendarget(CalendarMONTH) + 1);

String date = StringvalueOf(calendarget(CalendarDAY_OF_MONTH));

String day = StringvalueOf(calendarget(CalendarDAY_OF_WEEK) - 1);

int hour = calendarget(CalendarHOUR_OF_DAY);

        int minute = calendarget(CalendarMINUTE);

        int second = calendarget(CalendarSECOND);

Systemoutprintln("现在的时间是:");

Systemoutprintln("" + year + "年" + month + "月" + date + "日 " + "星期" + day);

Systemoutprintln("" + hour + "时" + minute + "分" + second + "秒");

calendarset(1949, 9, 1); //将日历翻到1949年10月1日,注意9表示十月。

        // 返回当前时间,作为从开始时间的 UTC 毫秒值。

long time1949 = calendargetTimeInMillis();

calendarset(2014, 9, 1); //将日历翻到2014年10月1日。9表示十月。

        // 返回当前时间,作为从开始时间的 UTC 毫秒值。

long time2004 = calendargetTimeInMillis();

long interdays = (time2014 - time1949) / (1000  60  60  24);

Systemoutprintln("2014年10月1日和1949年10月1日相隔" + interdays + "天");

}

}

import javautil;

public class MyDate{

 int day;

 int month;

 int year;

 public MyDate(){}

 public MyDate(int day,int month,int year){

  thisday = day;

  thismonth = month;

  thisyear = year;

 }

 public void funtion(MyDate d){

  int newDay = dday;

  int newMonth = dmonth;

  int newYear = dyear;

  Calendar c1 = CalendargetInstance();

  c1set(newYear,newMonth,newDay);

  long n1 = c1getTimeInMillis();

  Calendar c2 = CalendargetInstance();

  c2set(year,month,day);

  long n2 = c2getTimeInMillis();

  Systemoutprintln( "相差天数为:" + Mathabs((n1 - n2)/24/3600000)); }

 public static void main(String[] args){

  MyDate d1 = new MyDate(1,1,2008);

  MyDate d2 = new MyDate(2,1,2001);

  d1funtion(d2);

 }

}

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

比如两个日期:2005-12-31和2006-01-05,怎么才能精确的计算出这两个日期之间差的天数

望回答的详细一些,谢了先

解析:

import javatextParseException;

import javatextSimpleDateFormat;

import javautilDate;

class Test2 {

public static String getDate(){

SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd");

Date dd = new Date();

return ftformat(dd);

}

public static long getQuot(String time1, String time2){

long quot = 0;

SimpleDateFormat ft = new SimpleDateFormat("yyyy/MM/dd");

try {

Date date1 = ftparse( time1 );

Date date2 = ftparse( time2 );

quot = date1getTime() - date2getTime();

quot = quot / 1000 / 60 / 60 / 24;

} catch (ParseException e) {

eprintStackTrace();

}

return quot;

}

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

String date1 = "2008/8/8";

String date2 = getDate();

long day = getQuot(date1,date2);

Systemoutprintln( "距离 "+date1+" 还有 "+day+" 天" );

}

}

你看一下这段代码,是从今天到2008/8/8的天数。

Date的getTime()方法返回自1970年1月1日午夜(通用时间)以来的毫秒数。

用2008/8/8的getTime()减去今天的getTime()就是这两天相差的毫秒数,1秒=1000毫秒,1分钟=60秒,1小时=60分钟,1天=24小时,然后除除除就得到天数了。

以上就是关于java利用Calendar如何计算两个日期只差全部的内容,包括:java利用Calendar如何计算两个日期只差、用java写一个程序可以计算2个日期之间的天数差。、java中计算两个日期之间差的天数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10219273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存