JAVA - 數字相乘後溢位問題

摘要:JAVA - 數字相乘後溢位問題

這個問題在於,我想要算一個月的timestemp的值

一般來講,應該是直接

long timestemp = 30*24*60*60*1000;

但卻發生變成負值

-1702967296

 

發現直接相乘的話,因為是int,乘完後,變負,

必須運算前,就轉型為long再去運算才會得到真正想要的資料值

long timestemp = 30*24*60*60*(long)1000;

2592000000