掌握Java“时空”,工作中关于时间类的使用
一、Date类
概述
java.util.Date类表示特定的刹时,精确到毫秒。Date类的构造函数可以把毫秒值转成日期对象
构造方法
- public Date() //以当前时间创建时间对象
- public Date(long date) //分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即1970年1月1日00:00:00 GMT)以来的指定毫秒数。
简单来说:使用无参构造,可以主动设置当前系统时间的毫秒时刻;指定long范例的构造参数,可以自定义毫秒时刻。
- //无参构造器,创建当前对象
- System.out.println(new Date()); //Wed Nov 20 10:01:03 CST 2024
- //有参构造器,用于创建一个表示特定时间戳的日期对象。时间戳是以毫秒为单位,从1970年1月1日00:00:00 GMT(格林尼治标准时间)开始计算的时间。
- System.out.println(new Date(0L));//Thu Jan 01 08:00:00 CST 1970
复制代码 二、DateFormat类
概述
DateFormat主要用于日期类Date和字符串之间的转换
- 格式化:按照指定的格式,从Date对象转换为String对象。(format)
- 解析:按照指定的格式,从String对象转换为Date对象。(parse)
构造方法
DateFormat是一个抽象类,不能直接实例化,常用的是它的子类 SimpleDateFormat
常用的构造方法
SimpleDateFormat(String pattern) 创建一个 SimpleDateFormat 对象,使用指定的日期和时间格式模式。
参数:
pattern:一个字符串,表示日期和时间的格式模式。
示例- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
复制代码- Date date = new Date();
- //创建一个 SimpleDateFormat 对象,使用指定的日期和时间格式模式。
- DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- String format = dateFormat.format(date);//2024-11-20 10:21:22
- System.out.println(format);
- String str = "2024-11-20 10:01:03";
- try {
- Date parse = dateFormat.parse(str);
- System.out.println(parse);//Wed Nov 20 10:01:03 CST 2024
- } catch (Exception e) {
- //打印异常并记录
- //todo
- }
复制代码 三、Calendar 类
概念
java.util.Calendar是日历类,在Date后出现,替换掉了很多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。
构造方法
Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,返回子类对象,如下:
Calendar静态方法
- public static Calendar getInstance():使用默认时区和语言情况获得一个日历
Calendar类可以很方便的获取到周几,当月有多少天(30或31或28等),同时还可以方便的举行加一天,加一小时之类的盘算- Calendar instance = Calendar.getInstance();
- instance.setTime(date);//将date对象设置到日历中
- Date time1 = instance.getTime();//获取对应的date对象
- System.out.println(instance.get(Calendar.YEAR));//获取年份
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |