标签:
我不清楚大家在上大学的时候是什么样的情况,在我上大学的时候,老师在开课上第一节课的时候都会告诉我们,这本书他会将多少知识点?讲到哪里?考试考到哪里?以至于好多课程我学到的都只是皮毛基础的东西。导致现在不得不花很多的功夫来补以前落下的知识点。其中这个日期类就是一个很重要的知识点,在工作中经常会用到它,这个东西也不难,但是对于我自己来说经常忘这鬼,所以我这次就把它从头梳理一遍并且记录下来,供备以后使用。
首先介绍Date类的构造方法:
1. Date() 创建一个获取当前日期和时间的Date对象。
2. Date(long date) 创建指定参数的Date对象,其中参数date表示距离格林威治标准时间1970年1月1日的00:00:00的偏离量。(通俗的称为时间戳)
这个类还有三个比较常见的方法:
1. before(Date when) 测试日期对象是否比指定日期when早。若早则返回true
2. after(Date when) 与上述相反。
3. equals(Object obj) 比较两个日期的相等性,相等返回true
其实在使用Date类的情况下我们一般结合SimpleDateFormat类一起使用。SimpleDateFormat类主要是用来格式化日期和时间的。注意它是一个抽象类不可以实例化的。所以我们使用它的子类来格式化日期时间。其中有些字母所表示的意义我们需要记一下:(区分大小写)
G - 表示公元前后
y - 年
M - 月
w - 一年中的第几周
W - 一月中的第几周
D - 一年中的第几天
d - 一月中的第几天
F - 一月中第几个星期几
E - 星期中的天数
a - 上午还是下午3.
H - 24小时制(00-23)
h - 12小时制(01 - 12)
K - 12小时制 (01 - 11)
k - 24小时制(01-24)
m - 小时中的分钟数
s - 分钟的秒数
S - 毫秒数
z - 时区
常用的有三个方法:
1.parse(String source) 把一个包含日期的字符串解释为Date类型
2.format(Date date) 将一个Date类型转换为指定的时间显示格式
3.toPattern() 返回一个表示日期格式的模式字符串
例子:
Date newDate = new Date();
Log.d(TAG,"现在的时间:"+newDate);
SimpleDateFormat defaultSDF = new SimpleDateFormat ();
Log.d(TAG,"默认的模式为:"+defaultSDF.toPattern());
Log.d(TAG,"默认模式的日期时间为:"+defaultSDF.format(newDate));
/*格式化时间 */
String[] pattern = {"yyyy-MM-dd HH:mm:ss.SSS","yyyy.MM.dd G ‘at‘ HH:mm:ss z","EE,MMM d,‘‘yy","h:mm a","hh ‘o‘‘clock‘ a,zzzz"};
SimpleDateFormat patternSDF = null;
for(int i = 0 , i < pattern.length; i++){
patternSDF = new SimpleDateFormat (pattern[i]);
Log.d(TAG,"格式化后的时间为:"+patternSDF.format(newDate));
}
Date date = new Date(6000);
Log.d(TAG,"与格林威治标准时间对应的时间为:"+date );
最后输出的结果:
现在的时间:Mon May 02 23:39:30 CST 2016
默认的模式为:yy-M-d ah:mm
默认模式的日期时间为:16-5-2 下午11:39
格式化后的时间为:2016-05-02 23:39:30.876
格式化后的时间为:2016.05.02 公元 at 23:39:30 CST
格式化后的时间为:星期一,五月 2,‘16
格式化后的时间为:11:39 下午
格式化后的时间为:11 o‘clock 下午,中国标准时间
与格林威治标准时间对应的时间为:Thu Jan 01 08:00:06 CST 1970
好了,这个够详细了吧,最起码可以应对我们工作的需要了。
标签:
原文地址:http://www.cnblogs.com/fuyangyang/p/farley-fu.html