常用类——时间处理总结

1、System类[java.lang.System]

       System类中提供了获取时间的静态方法public static long currentTimeMillis()  ,该方法返回的是系统当前时间,单位是毫秒。

2、Date[java.util.Date]    

      a、分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
      b、其内部的实现是在构造器中调用了System.currentTimeMillis()这个方法。

1
内部构造器:
1
2
3
public Date() {
     this (System.currentTimeMillis());
}

3、DateFormat[java.text.DateFormat]  abstract class

      由于是抽象类,我们可以在其直接子类SimpleDateFormat中去具体看其实现。

4、SimpleDateFormat[java.text.SimpleDateFormat]

     a、继承体系:
        java.lang.Object
             --java.text.Format
                  --java.text.DateFormat
                       --java.text.SimpleDateFormat

     b、使用特定格式输出时间
          【了解】SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。
           a、相关方法的解读   
               1)、 String format(Object obj) ---格式化一个对象以生成一个字符串。[Format]  

1
eg:
1
2
3
4
Date date = new Date();
DateFormat df = new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss" );
String myTime = df.format(date);
System.out.println(myTime); //****-**-** **:**:**
                  2)、 Date parse(String source) ---从给定字符串的开始解析文本,以生成一个日期。
1
eg:
1
2
3
4
5
6
7
8
String myFormat = "2014年07月07日" ; //被解析的时间字符串
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy年MM月dd日" ); //解析格式
try {
      Date myDate = sdf.parse(myFormat);
      System.out.println(myDate);   //Mon Jul 07 00:00:00 CST 2014 
} catch (ParseException e) {       
      e.printStackTrace();
}
1
2
【tips】注意给定的时间字符串和被解析的格式要对应起来,
       否则会出现解析异常--java.text.ParseException

5、Calendar[java.util.Calendar]

         【了解】Calendar 类是一个abstract类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段提供了一些方法。
         相关方法解读:
             1、static Calendar getInstance() ---使用默认时区和语言环境获得一个日历。
                 Calendar 的 getInstance 方法返回一个 Calendar 对象,其日历字段已由当前日期和时间初始化: 

1
eg:
1
Calender calender = Calender.getInstace();
               2、 int get(int field) ---返回给定日历字段的值。

                 【tips】由于语言的定制标准和创始人的背景有关,所以中国日历的一些说法和其规定的标准有些差异,所以有必要了解一下有差异的属性field:
                  a)、Calendar.MONTH   其范围为:[0~11]
                  b)、Calendar.DAY_OF_WEEK   星期天是第一天

1
eg:
1
2
calendar.set(Calendar.YEAR, 2014 );
calendar.set(Calendar.MONTH, 11 );  //12月

       

      总结:时间的处理方式可以用SimpleDateFormat来处理,这也是最常用的一种方式,对于Calendar类,虽然提供了大量的关于时间和日历的处理,但是一般实际工作中不太常用,所以最主要的还是要掌握
  SimpleDateFormat来表示时间。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值