第十四届蓝桥杯集训——Date与Calendar函数
第十四届蓝桥杯集训——Date与Calendar函数
目录
Date参数
Data其实我们用的已经很少了,现在使用Data一般都是使用SimpleDateFormat返回一个当前的符合要求的时间字符串。也就是当前时间,一般是【yyyy-MM-dd HH:mm:ss】
我们先来看一下date的使用:
我们可以获取年月日时分秒都是没有问题的。那么,我们有了时间是否可以计算一下程序的运行的时间呢,这肯定是可以的,我们来测试一下。
字符串累加i自然数到100000,不输出,需要消耗时间:
时间消耗:
使用【StringBuffer】消耗时间:
消耗时间:
使用【StringBuilder】:
无论是使用【StringBuffer】还是使用【StringBuilder】消耗的时间都差不多。
StringBuffer与StringBuilder的区别
1、运行速度方面:StringBuilder > StringBuffer >String
2、线程安全方面:StringBuffer是线程安全的,StringBuilder是线程不安全的
3、StringBuffer类与StringBuilder类的原理和操作基本相同,区别就是StringBuffer是线程安全的,支持并发性操作,适合应用在多线程之中。
StringBuilder不支持并发性操作,线程是不安全的,但其在单线程中的性能要比StringBuffer高。
SimpleDateFormat函数
时间格式化函数,我们可以将时间格式化成我们想要的样子。
格式化对照表:
yyyy:年
MM:月
dd:日
hh:1~12小时制(1-12)
HH(推荐使用):24小时制(0-23)
mm:分
ss:秒
S:毫秒
E:星期几
D:一年中的第几天
F:一月中的第几个星期(会把这个月总共过的天数除以7)
w:一年中的第几个星期
W:一月中的第几星期(会根据实际情况来算)
a:上下午标识
k:和HH差不多,表示一天24小时制(1-24)。
K:和hh差不多,表示一天12小时制(0-11)。
z:表示时区
SimpleDateFormat的Date时间格式化
字符串的时间已经返回成Date类型了。
Calendar
所述Calendar类是一个抽象类,可以为在某一特定时刻和一组之间的转换的方法calendar fields如YEAR , MONTH , DAY_OF_MONTH , HOUR ,等等,以及用于操纵该日历字段,如获取的日期下个星期。 时间上的瞬间可以用毫秒值表示,该值是从1970年1月1日00:00 00:00.000 GMT(Gregorian)的Epoch的偏移量。
与其他区域设置敏感的类一样, Calendar提供了一种类方法getInstance ,用于获取此类型的一般有用的对象。 Calendar的getInstance方法返回一个Calendar对象,其日历字段已使用当前日期和时间进行初始化:
Calendar对象可以产生实现特定语言和日历风格的日期时间格式化所需的所有日历字段值(例如日语 - 公历,日语 - 繁体)。 Calendar定义某些日历字段返回的值的范围及其含义。 例如,日历系统第一个月的值为MONTH == JANUARY为所有日历。 其他值由具体的子类定义,如ERA 。
使用列表
输出效果:
有了这个我们就能随意的处理时间格式了。
- 点赞
- 收藏
- 关注作者
评论(0)