DateFormat类 Calendar类:
(是从Date类演变而来不过Date类基本已经弃用,从而分化为DateFormat类Calendar类两个类)
时间字母代表(必背)
G--> 年代
Y--> 年
M-->月
m-->分钟
d-->日
D-->一年中的第几天
h-->小时 12小时制
H-->小时 24小时制
s-->秒
S-->毫秒
E-->星期
F-->一月中的第几个星期几
w-->一年中第几个星期
W-->一月中的第几个星期
z-->时区
DateFormat类:
java.text包中
是一个抽象类
直接子类
作用:格式化日期并解析日期时间,通常用于日期和String字符串之间的转换日期--》文本 / 文本--》日期
借助于Date对象
例:
//构件日期对象 Date date = new Date();//日期对象 wed Nov 04 15:35:53 CST 2020 // 2020/11/4 16:01:22 //使用dateFormat类的子类SimpleDaterFormat pattern 格式,模式 SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); //把日期数据类型转换成字符串数据类型 格式化format(date) String str = df.format(date); System.out.println(str);//2020/11/4 16:18:22 //把字符串转换成日期格式 String time = "2020年11月4日"; //转换成Date类型 CST //parse(String str) //指定日期格式 参照 SimpleDateFormat df2 = new SimpleDateFormat("yyyy年MM月dd日"); //把字符串转换成日期 parse(String str) Date date2 = df2.parse(time); System.out.println(date2);//2020年11月4日->CST格式 Wed Nov 04 15:46:02 CST 2020
Calendar类:
日历类:实现日期与时间字段之间的转换
是一个抽象类
作用:获取日历上的时间字段值
Calender的对象的创建通过静态的getInstance()
例:
//构建一个Calendar类日历对象 //通过静态方法getInstance() Calendar calendar = Calendar.getInstance(); //Calendar calendar = new Calendar() //年月日 时分秒 星期 get(int field) int year = calendar.get(Calendar.YEAR); System.out.println(year);//2020年 int month = calendar.get(Calendar.MONTH); System.out.println(month);//10月 int date = calendar.get(Calendar.DATE); System.out.println(date);//4日 int hour = calendar.get(Calendar.HOUR); System.out.println(hour);//5小时 int minute = calendar.get(Calendar.MINUTE); System.out.println(minute);//0分钟 int second = calendar.get(Calendar.SECOND); System.out.println(second);//15秒 System.out.println(year+"/"+(month+1)+"/"+date+" "+(hour+12)+":0"+minute+":"+second); //指定字段增加值 //修改当前的时间为7天后 calendar.add(Calendar.DATE, 7); //获取日期值 int day = calendar.get(Calendar.DATE); System.out.println(day);//11日 //修改当前时间为5小时后 calendar.add(Calendar.HOUR, 5); //获取当前时间的小时 int huor2 = calendar.get(Calendar.HOUR); //日历对象转换成日期对象 Date格式 getTime() Date time = calendar.getTime(); System.out.println(huor2);