预备知识(关于时间)
度量单位:毫秒
表示毫秒数的变量的类型:lang
标准时间:1970年7月1日00:00
1000毫秒=1秒;60秒=1分钟;60分钟=1小时
Date类
很原始的一个日期类,现在基本废弃不用,此处只做简要介绍
常用方法
new Date():返回表示当前时间的一个时间对象
new Date(long time):返回表示标准时间time毫秒后的时间对象
getTime():返回当前距离标准时间的毫秒数
测试实现
1 //创建当前时间对象
2 Date da1=new Date();
3 //创建标准时间后400000000豪秒后的时间对象
4 Date da2=new Date(400000000);
DateFormat类
抽象类,需要其子类SimpleDateFormate来实现
用于格式化输出时间对象
SimpleDateFormat类
继承实现DateFormat类
格式化的格式
yyyy-MM-dd hh:mm:ss置于括号中
需提取年、月或者其他的日期中的几项时,定义成只有几个特定元素的格式就行
特殊标记不要变,他们有一种指定变量的能力,可以被识别
其他的例如“-”、“:”可以改成年月日
常用方法
new SimpleDateFormat("yyyy-MM-dd hh:mm:ss")定义一个格式化的格式对象
formate(时间对象)时间对象换算后以字符串形式return
parse(特定日期格式的表示日期的字符串)把指定格式的表示时间的字符串识别转化为时间对象
测试实现
1 //创建当前时间对象
2 Date da1=new Date();
3 //定义格式化格式
4 DateFormat df1=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
5 //格式化输出
6 String str1=df1.format(da1);
7 System.out.println(str1);//2020-01-09 02:43:38
8 //另一种格式
9 DateFormat df2=new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒");
10 String str2=df2.format(da1);
11 System.out.println(str2);//2020年01月09日 02时43分38秒
12 //格式化输入
13 Date da2=df2.parse("2020年01月09日 02时00分38秒");//此处抛出错误
14 Date da3=df2.parse("2020年1月9日 2时0分38秒");
15 System.out.println(da2);//Thu Jan 09 02:00:38 CST 2020
16 System.out.println(da3);//Thu Jan 09 02:00:38 CST 2020,所以有没有0是一样的,可能存在某种自动转化
17 //获得特定元素
18 DateFormat df3=new SimpleDateFormat("yyyy年");
19 String year=df3.format(da1);
20 System.out.println(year);//2020年
母含义示例
y
年份。一般用 yy 表示两位年份,yyyy 表示 4 位年份
使用 yy 表示的年扮,如 11;
使用 yyyy 表示的年份,如 2011
M
月份。一般用 MM 表示月份,如果使用 MMM,则会
根据语言环境显示不同语言的月份
使用 MM 表示的月份,如 05;
使用 MMM 表示月份,在 Locale.CHINA
语言环境下,如“十月”;在 Locale.US
语言环境下,如 Oct
d
月份中的天数。一般用 dd 表示天数
使用 dd 表示的天数,如 10
D
年份中的天数。表示当天是当年的第几天, 用 D 表示
使用 D 表示的年份中的天数,如 295
E
星期几。用 E 表示,会根据语言环境的不同, 显示不
同语言的星期几
使用 E 表示星期几,在 Locale.CHINA 语
言环境下,如“星期四”;在 Locale.US 语
言环境下,如 Thu
H
一天中的小时数(0~23)。一般用 HH 表示小时数
使用 HH 表示的小时数,如 18
h
一天中的小时数(1~12)。一般使用 hh 表示小时数
使用 hh 表示的小时数,如 10 (注意 10 有
可能是 10 点,也可能是 22 点)
m
分钟数。一般使用 mm 表示分钟数
使用 mm 表示的分钟数,如 29
s
秒数。一般使用 ss 表示秒数
使用 ss 表示的秒数,如 38
S
毫秒数。一般使用 SSS 表示毫秒数
使用 SSS 表示的毫秒数,如 156
原文:https://www.cnblogs.com/hbc314/p/12172184.html