日期类
第一代
1、Date 类:精确到毫秒,代表特定瞬间
(1)获取当前系统时间
public Date()
(2)获取自 1970.1.1 00:00:00 GMT 起,指定毫秒数的时间,date 为正数表示日期之后,为负数表示日期之前
public Date(long date)
2、SimpleDateFormat 类:格式化和解析日期的具体类,允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)、规范化
(1)指定日期格式
public SimpleDateFormat(String pattern)
(2)按照调用该方法的 SimpleDateFormat 对象指定的格式,返回 StringBuffer 类型的日期
public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition pos)
(3)String -> Date,String 对象的日期格式必须与 SimpleDateFormat 对象的日期格式一致,返回 Date 对象为默认格式
public Date parse(String text, ParsePosition pos)
第二代
1、Calender 抽象类,为特定瞬间与一组日历字段之间转换提供方法,且为操作日历字段提供方法
public abstract class Calendar implements Serializable, Cloneable, Comparable<Calendar>
2、创建日历类对象
public static Calendar getInstance()
3、获取日历对象的某个日历字段,日历字段是该类的 static 属性
public int get(int field)
4、Calender 没有对应的格式化方法,需要自行组合显示
缺点
1、Date 类,大多数方法在 Calender 类引入后被弃用
2、Calender 类
(1)可变性
(2)偏移性:Date 类的年份从 1900 开始,月份从 0 开始
(3)格式化:Date 类可格式化,Calender 类不可格式化
(4)线程不安全
(5)不能处理闰秒(每隔两天,多出一秒)
第三代
1、日期类:LocalDate 类:年月日,LocalTime 类:时分秒,LocalDateTime 类:年月日时分秒
(1)从默认时区的系统时钟获取当前日期时间的对象
public static LocalDate now()
public static LocalTime now()
public static LocalDateTime now()
2、DateTimeFormatter,格式日期类
(1)使用指定的模式创建格式化程序(DateTimeFormatter 对象)
public static DateTimeFormatter ofPattern(String pattern)
(2)使用 DateTimeFormatter 对象的规则将日期时间对象格式化为 String
public String format(TemporalAccessor temporal)
3、Instant 时间戳
(1)类似于 Date,一系列与 Date 类转换方式
(2)获取当前时间戳
public static Instant now()
(3)Date 类的方法:Instant 对象 -> Date 对象
public static Date from(Instant instant)
(4)Date 类的方法:Date 对象 -> Instant 对象,会丢失时间戳的精度
public Instant toInstant()
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战