我想處理將兩個數(shù)字相乘會導(dǎo)致溢出的特殊情況。代碼看起來像這樣:int a = 20;long b = 30;// if a or b are big enough, this result will silently overflowlong c = a * b;那是一個簡化的版本。在實(shí)際程序中,a并且b在運(yùn)行時從其他地方獲取。我想要實(shí)現(xiàn)的是這樣的:long c;if (a * b will overflow) { c = Long.MAX_VALUE;} else { c = a * b;}您如何建議我最好編寫此代碼?更新:a和b總是非負(fù)在我的情況。
如何檢查Java中的兩個數(shù)字是否會引起溢出?
莫回?zé)o
2019-11-12 10:57:07