为什么会出现“表达式中的数字溢出”警告
2022-09-02 04:42:21
使用 intellij 15.0.3 + Java 8u65...
lower = System.currentTimeMillis();
long upper = lower + 31536000000L; //add a year-ish
工作正常。但是如果我这样做:
lower = System.currentTimeMillis();
long upper = lower + (1000L*60*60*24*365);
Intellij 现在发出警告“表达式中的数字溢出”。如果这是真的,我会理解,并且它一直在警告两种表达,但事实并非如此。
有谁知道为什么第二个表达式会生成警告?我宁愿以这种方式进行分解,而不是一个数字,因为项目的其他开发人员更容易理解它在做什么(尽管我想我可以发表评论)。代码仍然明显编译,但我在我的构建中发现了警告,就像我无法挠痒痒一样。
编辑感谢您的回复...我认为这只是Intellij中的一个缓存问题...如果我知道复制/粘贴上述内容,我不会收到警告。如果我尝试在粘贴10次或2次后编辑它,我会弹出警告。