gpt4 book ai didi

java - Java 中的长数学运算

转载 作者:行者123 更新时间:2023-12-01 23:04:27 25 4
gpt4 key购买 nike

我在使用 java 进行一些长数学运算时遇到了一些麻烦。我想做的是显示以周为单位的日期,这样我就可以计算两周的时间。我看过一些教程,但似乎没有一个起作用。

这是问题的代码

public void onClick(View v) 
{ //for the placement date
final Calendar cal = Calendar.getInstance();
year=cal.get(Calendar.YEAR);
month=cal.get(Calendar.MONTH);
day=cal.get(Calendar.DAY_OF_MONTH);
showDialog(START_DATE_DIALOG_ID);


placementDate = new Long(cal.getTimeInMillis());
placementDate /=604800000L; //takes the date in ms to weeks
}

我用两个日期执行此函数两​​次,因此当仅以 ms 格式输出时,我得到两个不同的数字:

  • 2014 年 4 月 11 日 - 1397217773259
  • 2014 年 5 月 12 日 - 1397217815087

除法时,我最终得到完全相同的值,均为 2310

我目前尝试了两种格式来计算天数,第一种是代码中显示的方式,将日期除以 86400000,第二种除以 (1000* 60*60*24 *7),每种方式都会产生以下输出2310.我只是不明白或者似乎无法找到让它按应有的方式工作的方法

最佳答案

您显示的数字 1397217773259 和 1397217815087 之间的差异为 41828 或不到 42 秒。这显然比除数 604800000 小得多。

检查您的日历逻辑。

关于java - Java 中的长数学运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23012447/

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