一、Date 类
Data 类表示特定的瞬间,精确到毫秒,使用Data类来表示当前系统时间
1、Date 类构造函数
public Date():系统当前日期时间
public Date(long date):得到一个1970年1月1日0点这个时间基础上,加上参数 date 毫秒值对应的日期时间
2、Date 类常用方法
public long getTime():获取日期所对应的毫秒值
逻辑实例:
public static void main(String[] args)
{
Date d1 = new Date(); //获取系统当前日期
System.out.println(d1); //直接打印对象实际是调用了toString方法,在Date类中对toString方法进行了重写
Date d2 = new Date(345234554L); //获取从1970年1月1日0点开始,加上date毫秒值的日期时间
System.out.println(d2);
Date d3 = new Date();
long time = d3.getTime(); //获取日期所对应的毫秒
System.out.println(time);
}
二、DateFormat 类
DateFormat 类是日期时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间,可以通过这个类来完成日期和文本之间的转换,对于月、星期、甚至日历格式(阴历和阳历),其代码可完全与语言环境的约定无关。DateFormat 是抽象类,要通过其子类 SimpleDateFormat 来创建对象
1、DateFormat 类构造方法
public SimpleDateFormat():默认的格式化操作
public SimpleDateFormat(String pattern):按照指定格式进行日期格式化
y:年
M:年中的月份
d:月份中的天数
H:一天中的小时数
m:小时中的分钟数
s:分钟中的秒数
S:毫秒数
2、DateFormat 类常用方法
public final String format(Date date):把日期格式转换成字符串
public Date parse(String source):把日期字符串转换成日期对象
逻辑实例:
//format()把Date对象转换成String
Data d = new Date();
DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
String str = df.format(d);
//parse()把String对象转换成Date
String str = "2019年12月11日";
DateFormat df = new SimpleDateFormat("yyyy年MM月dd日");
Date date = df.parse(str);
三、Calendar 类
Calendar 为抽象类,表示日历类,在 Date 后出现,替换掉了许 Date 的方法,该类将所有可能用到的实践信息封装为静态成员变量,方便获取。由于语言敏感性,Calendar 类在创建对象时并非直接创建,而是通过静态方法创建,将敏感语言处理好再返回子类对象。
Calendar 类常用方法
public static Calendar getInstance():获取日期对象
public int get(int field):获取时间字段值
public void add(int field,int amount):指定字段增加某值
public final void set(int field,int value):设置指定字段的值
public final Date getTime():获取该日历对象转成的日期对象
public static void main(String[] args)
{
Calendar c = Calendar.getInstance();
System.out.println(c.get(Calendar.YEAR)); //获取年份
c.add(Calendar.HOUR,3); //修改时间为3小时后
System.out.println(c.getTime()); //获取日历对象转成的日期对象
c.set(Calendar.HOUR,18); //设置指定字段的值
System.out.println(c.getTime());
}