java-time - 自纪元以来可以表示为毫秒的最大 Instant 是多少?
问题描述
Instant.MAX.toEpochMilli()
提高java.lang.ArithmeticException: long overflow
。
在不达到 long 限制的情况下,可以表示的最大时间戳是多少?
它有一个常数吗?
解决方案
不会引发异常的最大时间戳toEpochMilli()
是+292278994-08-17T07:12:55.807Z
.
Instant.MAX
大得多+1000000000-12-31T23:59:59.999999999Z
Instant.ofEpochMilli(Long.MAX_VALUE); // +292278994-08-17T07:12:55.807Z
我不知道这个特定日期的任何常数,但它很容易计算Instant.ofEpochMilli(Long.MAX_VALUE))
推荐阅读
- python - 使用 fastapi 下载文件
- amazon-web-services - 如何将 ZIP 文件部分上传到 S3 存储桶?
- google-bigquery - 在 BigQuery 中自动删除临时表
- c - C switch case 值不能在 switch 内修改(不是常量)
- linux - uglifyjs 命令权限被拒绝
- python - 如何重置从我的 ipywidget 命令按钮生成的输出,以便仅显示更新的 DataFrame?
- python - tkinter 框架在添加小部件时调整大小,为什么我的标签总是在中心位置?
- java - 用户打开应用程序时如何显示主页?
- powershell - Powershell如何包含用户名和进程名等?
- eve - 您如何将身份验证添加到 eve_swagger 提供的路由中?