篇九:Date使用

一、Java中Date的主要操作类

  Date:时间类,生成时间

  SimpleDateFormat:指定时间格式,转换

  Calendar:操作日期,对时间进行加、减、比较等操作

 

二、Date类的操作

//创建时间
Date date = new Date();
//获取时间戳
long times = date.getTime();
System.out.println(times);
        
//时间戳转换为时间
Date date2 = new Date(times);
        
//Date--String
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //指定时间展示格式
String dateStr = format.format(date); //转换时间
System.out.println(dateStr);

//String--Date
try {
    System.out.println(format.parse("2016-12-01 12:00:00"));
} catch (ParseException e) {
    e.printStackTrace();
}

 

三、SimpleDateFormat

      G 年代标志符
         y 年
         M 月
         d 日
         h 时 在上午或下午 (1~12)
         H 时 在一天中 (0~23)
         m 分
         s 秒
         S 毫秒
         E 星期
         D 一年中的第几天
         F 一月中第几个星期几
         w 一年中第几个星期
         W 一月中第几个星期
         a 上午 / 下午 标记符
         k 时 在一天中 (1~24)
         K 时 在上午或下午 (0~11)
         z 时区
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//Date--String
format.format(new Date());
//String--Date
format.parse("2012-01-01")

 

四、Calendar

  1、基础操作

可以使用下面三个方法把日历定到任何一个时间:    
    
set(int year ,int month,int date)     
set(int year ,int month,int date,int hour,int minute)     
set(int year ,int month,int date,int hour,int minute,int second)  
    // 15 分钟以后  
    calendar.add(Calendar.MINUTE, 15);  
    MINUTE = calendar.get(Calendar.MINUTE);  
    System.out.println("MINUTE + 15 = " + MINUTE);  
  
    // 30分钟前  
    calendar.add(Calendar.MINUTE, -30);  
    MINUTE = calendar.get(Calendar.MINUTE);  
    System.out.println("MINUTE - 30 = " + MINUTE);  
        /*
         * 将当前日期时间表是为年,月,日,时,分,秒
         */
        Calendar calendar=Calendar.getInstance();  //日历对象
        int year=calendar.get(Calendar.YEAR);
        int month=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1
        int day=calendar.get(Calendar.DAY_OF_MONTH);
        int hour=calendar.get(Calendar.HOUR_OF_DAY);
        int minute=calendar.get(Calendar.MINUTE);
        int second=calendar.get(Calendar.SECOND);
        System.out.println("今天是: "+year+"年"+month+"月"+day+"日");
        System.out.println("现在时:  "+hour+"时"+minute+"分"+second+"秒");
        /*将当前时间的月份设置为9 月*/
        calendar.set(Calendar.MONTH, 8);  //设置月份时-1
        int year1=calendar.get(Calendar.YEAR);
        int month1=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1
        int day1=calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println("今天是: "+year1+"年"+month1+"月"+day1+"日");
        //将当前时间加10天
        calendar.add(Calendar.DAY_OF_MONTH, 10);
        int year2=calendar.get(Calendar.YEAR);
        int month2=calendar.get(Calendar.MONTH)+1;  //月份默认是0-11需要手动加1
        int day2=calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println("今天是: "+year2+"年"+month2+"月"+day2+"日");

 

  2、Calendar枚举

    Calendar枚举结果是int型

Calendar cal = Calendar.getInstance();
//当前年
int year = cal.get(Calendar.YEAR);
//当前月
int month = (cal.get(Calendar.MONTH))+1;
//当前月的第几天:即当前日
 int day_of_month = cal.get(Calendar.DAY_OF_MONTH);
//当前时:HOUR_OF_DAY-24小时制;HOUR-12小时制
int hour = cal.get(Calendar.HOUR_OF_DAY);
//当前分
 int minute = cal.get(Calendar.MINUTE);
//当前秒
int second = cal.get(Calendar.SECOND);
 //0-上午;1-下午
int ampm = cal.get(Calendar.AM_PM);
//当前年的第几周
int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
//当前月的第几周
int week_of_month = cal.get(Calendar.WEEK_OF_MONTH);
//当前年的第几天
int day_of_year = cal.get(Calendar.DAY_OF_YEAR);

 

 

 

posted @ 2017-01-23 15:15  刘广平  阅读(136)  评论(0)    收藏  举报