Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JAVA中,使用整数创建日期,然后回溯到整数会失去精度吗?_Java_Date_Casting_Int_Precision - Fatal编程技术网

在JAVA中,使用整数创建日期,然后回溯到整数会失去精度吗?

在JAVA中,使用整数创建日期,然后回溯到整数会失去精度吗?,java,date,casting,int,precision,Java,Date,Casting,Int,Precision,在这种情况下是否可能失去精度 int X = (some integer number); Date D = new Date(X * 1000); int Y = (int)(D.getTime())/1000; 我相信,只要X是某个整数值,Y就会始终与X相同。对吗?不对!你说得不对! 替换行Date D=新日期(X*1000) 日期D=新日期(X*1000L) 不!你说得不对! 替换行Date D=新日期(X*1000) 日期D=新日期(X*1000L) 使用长(64位)数字,而不是整

在这种情况下是否可能失去精度

int X =  (some integer number);
Date D = new Date(X * 1000);
int Y  = (int)(D.getTime())/1000;
我相信,只要X是某个整数值,Y就会始终与X相同。对吗?

不对!你说得不对! 替换行
Date D=新日期(X*1000)

日期D=新日期(X*1000L)

不!你说得不对! 替换行
Date D=新日期(X*1000)


日期D=新日期(X*1000L)

使用长(64位)数字,而不是整数(32位)。如果使用整数,它可能会溢出(从正到负)。有关详细信息,请参见此链接

使用长(64位)数字而不是整数(32位)数字。如果使用整数,它可能会溢出(从正到负)。有关详细信息,请参阅此链接

X*1000
可能溢出。。。问题不是精度的损失,而是(似乎)随机日期…
X*1000
可能溢出。。。问题不是精度的损失,而是(似乎)随机的日期。。。