• 常用
  • 百度
  • google
  • 站内搜索

资讯

Java获取当前时间戳的多种方式

  • 更新日期:2025-11-30
  • 查看次数:4819

最推荐使用Instant.now().toEpochMilli()获取时间戳,1. System.currentTimeMillis()高效简单;2. Date().getTime()已过时;3. Instant支持纳秒且线程安全;4. LocalDateTime需结合时区转换。

java怎么获取当前时间戳 获取当前时间戳的多种方式

在 Java 中获取当前时间戳有多种方式,适用于不同的场景和需求。以下是几种常用的方法,涵盖从传统到现代的时间处理方式。

使用 System.currentTimeMillis()

这是最简单、最常见的获取时间戳的方式,返回自 1970 年 1 月 1 日 00:00:00 UTC 起的毫秒数。

示例代码:

long timestamp = System.currentTimeMillis();
System.out.println("当前时间戳(毫秒): " + timestamp);
这种方式效率高,适合大多数需要时间戳的场景,比如日志记录、性能监控等。

使用 java.util.Date

通过创建 Date 对象并调用 getTime() 方法也可以获取时间戳。

示例代码:

import java.util.Date;

Date date = new Date();
long timestamp = date.getTime();
System.out.println("当前时间戳(毫秒): " + timestamp);
虽然功能正常,但 Date 类已被认为是过时的,建议优先使用更现代的 API。

使用 java.time.Instant(Java 8+ 推荐)

Instant 是 Java 8 引入的现代化时间 API,表示时间线上的一个瞬时点,默认基于 UTC 时区。

示例代码:

import java.time.Instant;

Instant now = Instant.now();
long timestamp = now.toEpochMilli(); // 毫秒
long secondTimestamp = now.getEpochSecond(); // 秒

System.out.println("毫秒时间戳: " + timestamp);
System.out.println("秒级时间戳: " + secondTimestamp);
推荐在新项目中使用 Instant,它线程安全且 API 更清晰。

使用 LocalDateTime 和 ZoneOffset

如果你需要结合本地时间处理时间戳,可以配合 ZoneOffset 使用。

示例代码:

import java.time.LocalDateTime;
import java.time.ZoneOffset;

LocalDateTime now = LocalDateTime.now();
long timestamp = now.toEpochSecond(ZoneOffset.UTC);

System.out.println("秒级时间戳: " + timestamp);
注意:toEpochSecond 需要指定时区偏移,否则无法转换。

总结对比

  • System.currentTimeMillis():最直接,性能好,适合简单场景。
  • Date.getTime():可用但不推荐,API 设计较老。
  • Instant.now().toEpochMilli():现代 Java 推荐方式,功能丰富,支持纳秒精度。
  • LocalDateTime.toEpochSecond():适合需要本地时间逻辑的场景,需手动处理时区。
基本上就这些常用的获取时间戳的方法。根据项目使用的 JDK 版本和具体需求选择合适的方式即可。

本文转载于:互联网 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

imtoken下载 im钱包 imtoken imtoken 快连官网 imtoken imtoken imtoken imtoken imtoken wallet imtoken imtoken官网 imtoken钱包 imtoken下载 imtoken官网 imtoken钱包 imtoken安卓下载 imtoken下载 imtoken官方下载 imtoken官网 imtoken安卓下载 imtoken下载 imtoken下载 imtoken imtoken imtoken imtoken imtoken imtoken imtoken imtoken imtoken bitget wallet telegram下载 quickq VPN trust wallet v2rayn imtoken
imtoken imtoken下载 imtoken官网 imtoken钱包 imtoken imtoken下载 imtoken官网 imtoken imtoken钱包 imtoken imtoken下载 imtoken钱包 imtoken管网 imtoken imtoken钱包 imtoken官网 imtoken imtoken下载 imtoken钱包 imtoken下载 imtoken官网 imtoken imtoken官网 imtoken下载 imtoken钱包 imtoken官网 imtoken下载 imtoken钱包 imtoken imtoken钱包 imtoken下载 imtoken官网 imtoken钱包 imtoken下载 imtoken imtoken下载 imtoken