当前位置: > 计算机时间时为什么要先除后乘,例如t=t/(1000*3600*24)*(1000*3600*24),除完再乘不是相当于什么都没...
题目
计算机时间时为什么要先除后乘,例如t=t/(1000*3600*24)*(1000*3600*24),除完再乘不是相当于什么都没
如下列代码
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
public class Test {
 public static void main(String[] args) {
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  long t = System.currentTimeMillis();
  t = t / (1000 * 3600 * 24) * (1000 * 3600 * 24);
  System.out.println(sdf.format(new Timestamp(t)));
  t = System.currentTimeMillis();
  t = t / (1000 * 3600 * 24) * (1000 * 3600 * 24) - TimeZone.getDefault().getRawOffset();
  System.out.println(sdf.format(new Timestamp(t)));
 }
}
我不明白关于t的计算,除以再乘以,不是相当于什么也没有做吗?
t = t / (1000 * 3600 * 24) * (1000 * 3600 * 24);

提问时间:2021-03-26

答案
我想,如果t可能本身并不能被1000 * 3600 * 24整除,所以先除后乘其实起了一个取整去余的作用.例如这里t表示毫秒,那么除以了1000 * 3600 * 24得到天数,但是可能不是整数天,但是因为t是long型,那么小数部分没有了,再去乘以1000 * 3600 * 24,就变成整数天数所对应的毫秒了.
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.