java计算日期间隔天数-js 毫秒数转换成日期
一、简介
如果我们可以对别人说:“我们1538729559671见,不要迟到!” 那就再简单不过了。 但是我们希望时间与昼夜和季节相关,所以事情变得复杂了。 JDK 1.0 中包含一个 java.util.Date 类,但在 JDK 1.1 中引入 Calendar 类后,它的大部分方法已被弃用。 而 Calendar 也不比 Date 好多少。 他们面临的问题是:
可变性:日期和时间等类应该是不可变的。
Offset:Date中的年份从1900开始,月份从0开始。
格式化:格式化只对日期有用,对日历没有用。
而且,它们不是线程安全的; 无法处理闰秒等。
第三次引入API成功,java 8引入的java.time API改正了以往的不足,将在未来很长一段时间内为我们服务
Java 8 吸取了 Joda-Time 的精华,重新开始为 Java 创建出色的 API。 新的java.time包含所有关于本地日期(LocalDate)、本地时间(LocalTime)、本地日期时间(LocalDateTime)、时区(ZonedDateTime)和持续时间(Duration)的类。 历史悠久的 Date 类有一个新的 toInstant() 方法java计算日期间隔天数,用于将 Date 转换为新的表示形式。这些新的本地化时间和日期 API 大大简化了日期时间和本地化的管理
2.新的日期和时间API
大多数开发者只会使用基础包和格式包,也可能会使用临时包。 因此java计算日期间隔天数,虽然有 68 种新的公开类型,但大多数开发人员可能只会使用其中的大约三分之一。
三、LocalDate、LocalTime、LocalDateTime
LocalDate、LocalTime 和 LocalDateTime 类是一些比较重要的类,它们的实例是不可变对象,分别表示使用 ISO-8601 日历系统的日期、时间、日期和时间。
它们提供简单的本地日期或时间,不包含当前时间信息或时区相关信息
方法
描述
now() / * now(ZoneId 区域)
静态方法,根据指定时区的当前时间/对象创建对象
的()
根据指定日期/时间创建对象的静态方法
getDayOfMonth()/getDayOfYear()
获取该月的天数(1-31)/获取该年的天数(1-366)
得到星期几()
获取星期几(返回 DayOfWeek 枚举值)
获取月份()
获取月份,返回一个Month枚举值
getMonthValue() / getYear()
获取月份(1-12)/获取年份
getHours()/getMinute()/getSecond()
获取当前对象对应的时分秒
withDayOfMonth()/withDayOfYear()/withMonth()/withYear()
修改月中天数、年中天数、月、年为指定值并返回一个新对象
* 与(临时调整器 t)
将当前日期时间设置为整理器指定的日期时间
plusDays(), plusWeeks(), plusMonths(), plusYears(), plusHours()
向当前对象添加天、周、月、年、小时
minusMonths() / minusWeeks()/minusDays()/minusYears()/minusHours()
从当前对象中减去月、周、日、年、小时
加(TemporalAmount t)/减(TemporalAmount t)
添加或减去 Duration 或 Period
isBefore()/isAfter()
比较两个 LocalDates
是闰年()
判断是否为闰年(在LocalDate类中声明)
* 格式(DateTimeFormatter t)
格式化本地日期和时间,返回一个字符串
*解析(字符序列文本,DateTimeFormatter t)
将指定格式的字符串解析为日期和时间
4.即时时间点
在处理时间和日期时,我们通常会想到年、月、日、时、分和秒。 然而,对于人类来说,这只是时间模型。
第二个通用模型是面向机器的,或者说是连续的。 在这个模型中,时间轴上的一个点被表示为一个很大的数字,便于计算机处理。在UNIX中,这个数字是自1970年以来的秒数; 同样,在Java中,也是自1970年以来的毫秒数
java.time 包通过值类型 Instant 提供了机器视图,并没有提供与人类打交道的时间单位。 Instant 表示时间轴上的一个点,没有任何上下文信息,例如时区。 从概念上讲,它只是表示自 1970 年 1 月 1 日 0:00:00 (UTC) 以来的秒数。 因为java.time包是按纳秒计算的,所以Instant的精度可以达到纳秒级别。 (1 纳秒 = 10-9 秒)
方法
描述
现在()
返回默认 UTC 时区 Instant 类对象的静态方法
ofEpochMilli(长纪元Milli)