java的Date和Calendar的一些方法

来源:互联网 发布:九亭淘宝仓库合租 编辑:程序博客网 时间:2024/06/05 08:03
import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Calendar;public class DateDemo {  public static void main(String arg[]) throws Exception{               //日期格式化      DateFormat df = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss");      Date dt1 = df.parse("2013-12-03 10:00:00");      Date dt2 = df.parse("2013-12-03 12:00:00");      //日期比较大小方法1      String relation = "";      if (dt1.equals(dt2))          relation = " equals ";      else if (dt1.before(dt2))          relation = " before ";      else if (dt1.after(dt2))          relation = " after ";      System.out.println(df.format(dt1) + relation + df.format(dt2));/*2013-12-03 10:00:00  before 2013-12-03 12:00:00*/            //日期比较大小方法2      long msec1 = dt1.getTime();      long msec2 = dt2.getTime();      if (msec1 == msec2)          relation = " equals ";      else if (msec1 < msec2)          relation = " before ";      else if (msec1 > msec2)          relation = " after ";      System.out.println(msec1);      System.out.println(msec2);      System.out.println(df.format(dt1) + relation + df.format(dt2));/*138603600000013860432000002013-12-03 10:00:00  before 2013-12-03 12:00:00*/        //java.util.Calendar除了可以表示日期和时间,还可以对日期或时间进行算术运算        Calendar calendar = Calendar.getInstance();     Date now = calendar.getTime();    System.out.println(df.format(now)); /*2013-12-03 12:41:40*/    //获取日期和时间(12小时制Calendar.HOUR 24小时制HOUR_OF_DAY)    String dt = calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-" + calendar.get(Calendar.DATE) + " " + calendar.get(Calendar.HOUR) + ":" + calendar.get(Calendar.MINUTE) + ":" + calendar.get(Calendar.SECOND);    System.out.println(dt);  /*2013-12-3 0:41:40*/    //设置年月日为2014.1.3(月month是从0开始的)    calendar.set(2014, 0, 3);    System.out.println(df.format(calendar.getTime())); /*2014-01-03 12:41:40*/    //设置时间       calendar.setTime(now);      //这周的第几天    int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);    //这月的第几天    int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);    //这年的第几天    int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);    //当前天在这个月的第几个星期    int dayOfWeekInMonth = calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH);    //输出0是AM 上午,如果输出1是PM下午    int ampm = calendar.get(Calendar.AM_PM);    System.out.println(dayOfWeek + " " + dayOfMonth + " " + dayOfYear + " " + dayOfWeekInMonth + " " + ampm);/*3 3 337 1 1*/    //减少1年    calendar.add(Calendar.YEAR, -1);    //增加1天    calendar.add(Calendar.DATE, 1);     //增加1小时    calendar.add(Calendar.HOUR, 1);     System.out.println(df.format(calendar.getTime())); /*2014-01-04 13:41:40*/    //DAY_OF_WEEK或DAY_OF_MONTH或DAY_OF_YEAR都是将Day加1,所以也能增加1天    calendar.add(Calendar.DAY_OF_WEEK, 1);     calendar.add(Calendar.DAY_OF_MONTH, 1);     calendar.add(Calendar.DAY_OF_YEAR, 1);         System.out.println(df.format(calendar.getTime())); /*2014-01-07 12:41:40*/  }}