gpt4 book ai didi

java.util.date 错误?

转载 作者:行者123 更新时间:2023-12-03 23:14:50 26 4
gpt4 key购买 nike

java.util.Date 是否存在错误?在做一些测试时,我将毫秒设置为2147483647 应该给我 2038-01-19 03:14:07 的日期,但它返回 1970-01-25 20:31:23。还用 4294967295 试了一下,得到 1970-02-19 17:02:47 的错误答案。有谁知道解决方法

import java.util.*;
import java.io.*;


/*
centos 6.3 x64
java version "1.7.0_13"
Java(TM) SE Runtime Environment (build 1.7.0_13-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode)
*/


public class Test
{
static public void main(String args[])
{
long ms = 2147483647L;

java.util.Date d = new java.util.Date( ms );

java.text.SimpleDateFormat df = new java.text.SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );
// SHOULD be 2038-01-19 03:14:07
System.out.println( df.format( d ) );

System.out.println(df.format(new Date(Long.MAX_VALUE)));

System.out.println( "\n" + ms );
System.out.println( Long.MAX_VALUE );
}
}

1970-01-25 20:31:23292278994-08-17 07:12:55

21474836479223372036854775807

最佳答案

2147483647 毫秒大约只有 24.8 天,所以它显示为 1970-01-25 20:31:23。

4294967295 毫秒大约只有 49.7 天,所以它显示为 1970-02-19 17:02:47。

您可能会根据 2147483647 秒而不是毫秒来计算您期望的结果。这不是 java.util.Date 中的错误;通过乘以 1000 将秒值转换为毫秒。

关于java.util.date 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15014589/

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