乘法得出负数

乘法记录日期间隔,算到天数时还正常,到了月就变负数了,这也太离谱了,想了想可能就是类型转换问题,但是看了看类型,long类型,没问题啊,后来百度了一下才发现,原因是默认用了 int类型 去乘,完事才转成 long类型 导致的问题,提前转成 long类型 去乘就正常了,惭愧,基础问题居然卡住了,记录一下。

long time = 30 * (24 * 60 * 60 * 1000) //异常,结果为负数
long time = (long) 30 * (24 * 60 * 60 * 1000) //正常

参考文章

你可能感兴趣的:(android)