gpt4 book ai didi

java - 将当前日期转换为整数

转载 作者:IT老高 更新时间:2023-10-28 21:22:01 27 4
gpt4 key购买 nike

我想将当前日期转换为整数值。默认情况下,它返回 long。当我尝试将 long 转换为整数,然后将整数值转换为日期时,意味着它显示 1970 年的日期,

 int i = (int) new Date().getTime();
System.out.println("Integer : " + i);
System.out.println("Long : "+ new Date().getTime());
System.out.println("Long date : " + new Date(new Date().getTime()));
System.out.println("Int Date : " + new Date(i));

输出如下:

Integer : 1292838124
Long : 1345617601771
Long date : Wed Aug 22 12:10:01 IST 2012
Int Date : Fri Jan 16 04:37:18 IST 1970

请大家帮帮我,如何将当前日期转换为整数(10位数字)?

最佳答案

问题是 Integer 不够大,无法存储当前日期,您需要使用 Long。

日期在内部存储为自 1970 年 1 月 1 日以来的毫秒数。

最大整数值为 2147483648,而自 1970 年以来的毫秒数目前约为 1345618537869

将最大整数值放入日期会得出 1970 年 1 月 26 日星期一。

编辑:根据以下评论显示除以 1000 的代码:

    int i = (int) (new Date().getTime()/1000);
System.out.println("Integer : " + i);
System.out.println("Long : "+ new Date().getTime());
System.out.println("Long date : " + new Date(new Date().getTime()));
System.out.println("Int Date : " + new Date(((long)i)*1000L));

Integer : 1345619256
Long : 1345619256308
Long date : Wed Aug 22 16:37:36 CST 2012
Int Date : Wed Aug 22 16:37:36 CST 2012

关于java - 将当前日期转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12067697/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com