千家信息网

java long类型存储时间戳的详细介绍

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍"java long类型存储时间戳的详细介绍",在日常操作中,相信很多人在java long类型存储时间戳的详细介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2026年10月31日java long类型存储时间戳的详细介绍

这篇文章主要介绍"java long类型存储时间戳的详细介绍",在日常操作中,相信很多人在java long类型存储时间戳的详细介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"java long类型存储时间戳的详细介绍"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

存储时间打算用时间戳来存储,打算用long类型来代表时间戳,但是在用long类型存储时间戳的时候出了点问提。

在写单元测试的时候,用一个long类型来存储时间戳,发现编译器报错了

刚开始猜想可能是因为long不够大,存储不了。然后用double类型来存:

发现还是报错了,仔细想想不对,double存储的数量应该时很大的,不会连时间戳都存储不了。
在后面加上小数点之后,居然可以存了:

加了小数点之后就能存了,仔细一想,之前没加小数点的时候他是整数,加了小数点之后变成了浮点数,猜测之前没加上小数点的时间戳是一个整形的字面值,加上小数点后是一个浮点数的字面值,之前的报错应该不是存储类型的问题,而是字面值范围超出了。

用字符串来测试:

把时间戳变成字符串的字面值,在将他解析成long类型的和int类型的,然后在把他们输出:

发现第一个long类型的成功输出了,而int类型的却报了一个number的错误.

这说明long是可以存储时间戳的,而int存储不了时间戳,所以判断之前不能存储时因为字面值为整形超出了范围。

Java 各种日期/时间 对象转Long时间戳

package cn.xbz; import java.text.SimpleDateFormat;import java.time.*;import java.time.format.DateTimeFormatter;import java.util.Calendar;import java.util.Date; /** * @title 各种日期/时间对象转时间戳 * @author Xingbz * @createDate 2018-5-18 */public class DateTime2MillisDemo {  private static final String FORMAT_STR = "yyyy-MM-dd HH:mm:ss";  public static void main(String[] args) {  System.out.println("====== JDK7及之前 ======");  Long l1 = getMillis1();  Long l2 = date2Millis(new Date());  Long l3 = calendar2Millis(Calendar.getInstance());  Long l4 = string2Millis(new SimpleDateFormat(FORMAT_STR).format(new Date()) , FORMAT_STR);//为了与以上几个保持一致  System.out.println(l1 + "\n" + l2 + "\n" + l3 + "\n" + l4);//会有几毫秒的差别   System.out.println("====== JDK8 ======");  Long l5 = getMillis2();  Long l6 = localDateTime2Millis(LocalDateTime.now());  Long l7 = localDate2Millis(LocalDate.now());  Long l8 = clock2Millis(Clock.systemUTC());  Long l9 = zoneDateTime2Millis(ZonedDateTime.now());  Long l10 = string2MillisWithJDK8(LocalDateTime.now().format(DateTimeFormatter.ofPattern(FORMAT_STR)) , FORMAT_STR);//为了与以上几个保持一致  System.out.println(l5 + "\n" + l6 + "\n" + l7 + "\n" + l8 + "\n" + l9 + "\n" + l10);//会有几毫秒的差别 }  /* JDK7及之前 */  /** 获取时间戳 */ public static Long getMillis1() {  return System.currentTimeMillis(); }  /** Date转时间戳 */ public static Long date2Millis(Date date) {  return date.getTime(); }  /** Calendar转时间戳 */ public static Long calendar2Millis(Calendar calendar) {  return calendar.getTime().getTime(); }  /** 日期字符串转时间戳 */ public static Long string2Millis(String dateStr, String formatStr) {  try {   SimpleDateFormat simpleDateFormat = new SimpleDateFormat(formatStr);   return simpleDateFormat.parse(dateStr).getTime();  } catch (Exception e) {   return 0L;  } }  /* JDK8 */  /** 获取时间戳 */ public static Long getMillis2() {  return Instant.now().toEpochMilli(); }  /** LocalDateTime转时间戳 */ public static Long localDateTime2Millis(LocalDateTime localDateTime) {  return localDateTime.toInstant(ZoneOffset.ofHours(8)).toEpochMilli(); }  /** LocalDate转时间戳 */ public static Long localDate2Millis(LocalDate localDate) {  return LocalDateTime.of(localDate, LocalTime.MIN).toInstant(ZoneOffset.ofHours(8)).toEpochMilli(); }  /** Clock转时间戳 */ public static Long clock2Millis(Clock clock) {  return clock.millis(); }  /** ZoneDateTIme转时间戳(这个不常用吧~) */ public static Long zoneDateTime2Millis(ZonedDateTime zonedDateTime) {  return zonedDateTime.toLocalDateTime().toInstant(ZoneOffset.ofHours(8)).toEpochMilli();//!!!好费劲 }  /** String转时间戳(JDK8) */ public static Long string2MillisWithJDK8(String dateStr , String formatStr) {  return LocalDateTime.parse(dateStr , DateTimeFormatter.ofPattern(formatStr)).toInstant(ZoneOffset.ofHours(8)).toEpochMilli(); }}

输出如下 :

到此,关于"java long类型存储时间戳的详细介绍"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

时间 存储 类型 小数 小数点 面值 学习 字符 字符串 日期 时候 输出 一致 对象 差别 更多 点数 范围 问题 帮助 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 广州百单互联网科技有限公司 善班互联网科技 杭州互联网科技公司 电子科技大学互联网 上游互联网科技 重庆科技学院互联网 联恩商钥互联网科技有限公司 科技赋能互联网健康 现代科技和互联网有关系吗 深圳前海聚择互联网科技有限公司 坤平互联网科技 开一家科技互联网公司需要多少钱 银川新华互联网科技学校联系电话 上海钢联属于互联网科技股吗 中国互联网有什么科技 陕西云淼互联网科技公司 互联网科技品牌 互联网领先科技成果宣传视频 株洲百竞科技的互联网营销顾问 百单网互联网科技有限公司 宁波青枫互联网科技有限公司 广州恒生互联网科技有限 互联网科技创新服务 互联网保险科技创业 上海京穆互联网科技有限公司 神州科技互联网有限公司 福州德业互联网科技 玉溪新华互联网科技怎么选 株洲百竞科技的互联网营销顾问
0