java关于时间类

jdk7

Date 时间

|--------------------------------|------------|
| 方法 | 说明 |
| public Date() | 创建对象表示当前时间 |
| public Date(long date) | 创建对象表示指定时间 |
| public void setTime(long date) | 设置毫秒指 |
| public void getTime() | 获取毫秒值 |

SimpleDateFormat 日期格式化

|-----------------------------------------|-------------------|
| 方法 | 说明 |
| public SimpleDateFormat() | 默认格式 |
| public SimpleDateFormat(String pattern) | 指定格式 |
| public final String format(Date date) | 格式化(日期对象 -> 字符串) |
| public Date parse(String source) | 解析(字符串 -> 日期对象 ) |

Calender 日历

|---------------------------------------|------------------|
| 方法 | 说明 |
| public static Calendar getInstance() | 获取当前时间对象 |
| public final Date getTime() | 获取日期对象 |
| public final setTime(Date date) | 给日历设置日期对象 |
| public long getTimeInMillis() | 拿到时间毫秒值 |
| public int get(int field) | 取日历中的某个字段信息 |
| public void set(int field,int value) | 修改日历的某个字段信息 |
| public void add(int field,int amount) | 为某个字段增加 / 减少指定的值 |

jdk8

Date 时间

ZoneId 时区

|--------------------------------------------|------------------|
| 方法 | 说明 |
| static Set<String> getAvailableZoneIds() | 获取 Java 中支持的所有时区 |
| static ZoneId systemDefault() | 获取系统默认时区 |
| static ZoneId of(String zoneId) | 获取一个指定时区 |

Instant 时间戳

|-------------------------------------------|------------------------------|
| 方法 | 说明 |
| static Instant now()`` | 获取当前时间的 Instant 对象(标准时间) |
| static Instant ofXxx(long epochMilli) | 根据(秒 / 毫秒 / 纳秒)获取 Instant 对象 |
| ZonedDateTime atZone(ZoneId zone) | 指定时区 |
| boolean isXxx(Instant otherInstant) | 判断系列的方法 |
| Instant minusXxx(long millisToSubtract) | 减少时间系列的方法 |
| Instant plusXxx(long millisToSubtract) | 增加时间系列的方法 |

ZoneDateTime 带时区的时间

|-------------------------------------|--------------------------|
| 方法 | 说明 |
| static ZonedDateTimenow()`` | 获取当前时间的 ZonedDateTime 对象 |
| static ZonedDateTime ofXxx(...) | 获取指定时间的 ZonedDateTime 对象 |
| ZonedDateTime withXxx(时间) | 修改时间系列的方法 |
| ZonedDateTime minusXxx(时间) | 减少时间系列的方法 |
| ZonedDateTime plusXxx(时间) | 增加时间系列的方法 |

SimpleDateFormat 日期格式化

|----------------------------------------|-----------|
| 方法 | 说明 |
| static DateTimeFormatter ofPattern(格式) | 获取格式对象 |
| String format(时间对象) | 按照指定方式格式化 |

Calendat 日历

LocalDate、LocalTime、LocalDateTime

|--------------------------------|-------------------------------|
| 方法 | 说明 |
| static XXX now() | 获取当前时间的对象。 |
| static XXX of(...) | 获取指定时间的对象 |
| get开头的方法 | 获取日历中的年、月、日、时、分、秒等信息 |
| isBefore, isAfter | 比较两个 LocalDate |
| with开头的 | 修改时间系列的方法 |
| minus开头的 | 减少时间系列的方法 |
| plus开头的 | 增加时间系列的方法 |
| public LocalDate toLocalDate() | localTimeDate转换成一个LocalDate对象 |
| public LocalTime toLocalTime() | localTimeDate转换成一个LocalTime对象 |

时间工具类

|------------|------------------------------|
| 方法 | 说明 |
| Duration | 用于计算两个时间间隔(秒,纳秒) |
| Period | 用于计算两个日期间隔(年、月、日) |
| ChronoUnit | 用于计算两个日期间隔(年月日时分秒毫秒微秒纳秒世纪纪元) |

相关推荐
桦说编程1 小时前
TransmittableThreadLocal 解读:从 CRR 机制到上下文所有权
java·后端·源码
xys_6781 小时前
JavaEE通关手册:初识Java
java·开发语言
文丑颜不良啊1 小时前
LeetCode2461~2480题目解析
java·leetcode
ShineWinsu2 小时前
对于Qt:QTableWidget常见属性以及QTableWidgetItem类的解析
开发语言·c++·qt·gui·客户端·表格·qtablewidget
文丑颜不良啊3 小时前
LeetCode2441~2460题目解析
java·leetcode
阿屿3 小时前
从零手搓 AI 伴侣(二):好感度通胀危机,与它的「货币政策」
java·人工智能
灿飞3 小时前
Kotlin与Java虚拟机十一:类与属性:构造顺序、backing field 与显式 backing field
java·后端·kotlin
aiks_yuan3 小时前
40亿个QQ号 1G内存怎么去重:Java BitSet 装不下,long 数组位图 512MB 实测 46 秒(JDK 17)
java
ShineWinsu4 小时前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
文丑颜不良啊4 小时前
LeetCode2521~2540题目解析
java·leetcode