JAVA如何实现日期时间相加减
来源:优易学  2011-11-18 11:38:23   【优易学:中国教育考试门户网】   资料下载   IT书店

  1.java.util.Calendar

  Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。

  例:

  view plaincopy to clipboardprint?

  1.Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。

  2.cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.

  3.

  4.cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.

  5.

  6.//通过格式化输出日期

  7.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");

  8.

  9.System.out.println("Today is:"+format.format(Calendar.getInstance().getTime()));

  10.

  11.System.out.println("yesterday is:"+format.format(cal.getTime()));

  Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。

  cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.

  cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.

  //通过格式化输出日期

  java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");

  System.out.println("Today is:"+format.format(Calendar.getInstance().getTime()));

  System.out.println("yesterday is:"+format.format(cal.getTime()));

  1.Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。

  2.cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.

  3.

  4.cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.

  5.

  6.//通过格式化输出日期

  7.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");

  8.

  9.System.out.println("Today is:"+format.format(Calendar.getInstance().getTime()));

  10.

  11.System.out.println("yesterday is:"+format.format(cal.getTime()));

  Calendar cal = Calendar.getInstance();//使用默认时区和语言环境获得一个日历。

  cal.add(Calendar.DAY_OF_MONTH, -1);//取当前日期的前一天.

  cal.add(Calendar.DAY_OF_MONTH, +1);//取当前日期的后一天.

  //通过格式化输出日期

  java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-dd");

  System.out.println("Today is:"+format.format(Calendar.getInstance().getTime()));

  System.out.println("yesterday is:"+format.format(cal.getTime()));

  得到2007-12-25日期:

  view plaincopy to clipboardprint?

  1.Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0);

  2.Date date = calendar.getTime();

  3.System.out.println("2007 Christmas is:"+format.format(date));

  1.Calendar calendar = new GregorianCalendar(2007, 11, 25,0,0,0);

  2.Date date = calendar.getTime();

  3.System.out.println("2007 Christmas is:"+format.format(date));

  java月份是从0-11,月份设置时要减1.

  GregorianCalendar构造方法参数依次为:年,月-1,日,时,分,秒.

  取日期的部分:

  view plaincopy to clipboardprint?

  1.int year =calendar.get(Calendar.YEAR);

  2.

  3.int month=calendar.get(Calendar.MONTH)+1;

  4.

  5.int day =calendar.get(Calendar.DAY_OF_MONTH);

  6.

  7.int hour =calendar.get(Calendar.HOUR_OF_DAY);

  8.

  9.int minute =calendar.get(Calendar.MINUTE);

  10.

  11.int seconds =calendar.get(Calendar.SECOND);

  1.int year =calendar.get(Calendar.YEAR);

  2.

  3.int month=calendar.get(Calendar.MONTH)+1;

  4.

  5.int day =calendar.get(Calendar.DAY_OF_MONTH);

  6.

  7.int hour =calendar.get(Calendar.HOUR_OF_DAY);

  8.

  9.int minute =calendar.get(Calendar.MINUTE);

  10.

  11.int seconds =calendar.get(Calendar.SECOND);

  取月份要加1.

  判断当前月份的最大天数:

  view plaincopy to clipboardprint?

  1.Calendar cal = Calendar.getInstance();

  2.int day=cal.getActualMaximum(Calendar.DAY_OF_MONTH);

  3.System.out.println(day);

  1.Calendar cal = Calendar.getInstance();

  2.int day=cal.getActualMaximum(Calendar.DAY_OF_MONTH);

  3.System.out.println(day);

  java.util.Date

  view plaincopy to clipboardprint?

  1.java.util.Date today=new java.util.Date();

  2.System.out.println("Today is "+formats.format(today));

  1.java.util.Date today=new java.util.Date();

  2.System.out.println("Today is "+formats.format(today));

  取当月的第一天:

  view plaincopy to clipboardprint?

  1.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-01");

  2.java.util.Date firstDay=new java.util.Date();

  3.System.out.println("the month first day is "+formats.format(firstDay));

  1.java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-01");

  2.java.util.Date firstDay=new java.util.Date();

  3.System.out.println("the month first day is "+formats.format(firstDay));

[1] [2] 下一页

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训