logo

Java获取时间戳的五种方式

作者:demo2024.01.17 12:29浏览量:36

简介:在Java中,有多种方法可以获取时间戳。时间戳是从1970年1月1日00:00:00开始计算的毫秒数。以下是五种获取时间戳的示例方法。

  1. 使用 System.currentTimeMillis()
    这是最简单的方法,它返回当前时间的毫秒值。
    1. long timestamp = System.currentTimeMillis();
  2. 使用 Instant 类的 toEpochMilli()
    Instant 是Java 8引入的一个类,表示一个具体的瞬间,精确到纳秒。通过调用 toEpochMilli() 方法,我们可以获取这个瞬间距离1970年1月1日00:00:00的毫秒数。
    1. Instant instant = Instant.now();
    2. long timestamp = instant.toEpochMilli();
  3. 使用 Calendar 类的 getTimeInMillis()
    通过 Calendar 类的实例,我们可以获取当前时间,并使用 getTimeInMillis() 方法将其转换为时间戳。
    1. Calendar calendar = Calendar.getInstance();
    2. long timestamp = calendar.getTimeInMillis();
  4. 使用 Date 类的 getTime()
    虽然 Date 类现在被认为是过时的,但在某些情况下,你可能仍然需要使用它。通过调用 getTime() 方法,可以从 Date 对象中获取时间戳。
    1. Date date = new Date();
    2. long timestamp = date.getTime();
  5. 使用 LocalDateTimeDuration(Java 9及以上版本):
    如果你使用的是Java 9或更高版本,可以使用 LocalDateTimeDuration 类来获取时间戳。首先,使用 LocalDateTime 获取当前时间,然后使用 Duration 将这个时间转换为一个时间长度(以毫秒为单位),最后将这个时间长度转换为时间戳。
    1. import java.time.LocalDateTime;
    2. import java.time.Duration;
    3. import java.time.temporal.ChronoUnit;
    4. ...
    5. LocalDateTime now = LocalDateTime.now(); // 获取当前时间
    6. long seconds = Duration.between(now, LocalDateTime.MAX).getSeconds(); // 计算当前时间到最大时间之间的秒数
    7. long timestamp = seconds * 1000; // 将秒数转换为毫秒数,得到时间戳

相关文章推荐

发表评论