java学习笔记之日期日历
Date日期类概述:
表示特定的瞬间,精确到毫秒
Date类的构造方法:
1.空参数构造方法
Date date = new Date();
获取到当前操作系统中的时间和日期
2.带参数构造方法
Date date= new Date(long m);
参数m:long类型的毫秒值
将传递的毫秒值转换为日期对象
Date类的方法:
1.将日期对象转换为对应所表示的毫秒值
long getTime();
2.将日期对象设定到指定毫秒值上,相当于带参数构造的方法
setTime(long m)
DateFormat类概述:
是日期时间格式化子类的抽象类,具有语言无关性。其子类SimpleDateFormat可以对时间日期惊醒格式化
SimpleDateFormat类的构造方法:
SimpleDateFormat(String pattern)
参数:pattern 是日期格式
常用日期格式:
y表示年 M表示月 d表示日 H表示时 m表示分 s表示秒
SimpleDateFormat类的常用方法:
1.将日期对象转化成指定日期格式的字符串表示形式
String format(Date d);
2.将String类型的日期格式转换成日期对象
Date parse(String str)
案例:将现在时间按照2017年12月18日的形式输出
//拿到日期对象
Date d= new Date();
SimpleDateFormat sdf= new SimpleDateFormat("yyyy年MM月dd日");
String date = sdf.format(d);//2017年12月18日
案例:将String转转换成Date日期对象;
String str ="2017-12-18";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date d= sdf.parse(str);//得到Date日期对象
Calendar 日历类
Calendar是日历类,在Date之后出现,替换掉了很多Date类的方法。Calendar类是个抽象类,创建对象不能直接创建,而是通过静态方法创建;
Calendar 类的静态方法
返回Calendar类的子类对象
Calendar c = Calendar.getInstance();
Calendar类的常用方法
1.获取时间字段值
public int get(int field);
常用的字段表示
YEAR年
MONYH月,是从0开始的,0代表1月,11代表12月
DATE 天
HOUR 时
MINUTE分
SECOND 秒
2.设定指定字段的值
public final void set(int field , int value);
set方法,用来设置日历字段的值
set(int year, int month ,int day) 同时设置年月日
3.将日历对象转换成Date日期对象
public final Date getTime()
4.根据日历的规则,为给定日历字段添加或者减去指定的时间量
void add(int field , int amount);
参数:amount,如果时正数就是加,如果时负数就是减
注意事项:
1.西方星期的开始为周日,中国为周一
2.在Calendar类中,月份的表示是以0-11代表1-12月。
3.日期是有大小关系的, 时间靠后,时间越大