iOS 除法運算結(jié)果一直是0的小Tip

今天正好碰到除法運算結(jié)果一直是0的情況,所以記錄下來,希望對大家有用。

示例

//結(jié)果為0
CGFloat tFloat = 10/1000;

原因

計算機中的運算有個原則:
相同數(shù)據(jù)類型的值才能進(jìn)行運算,而且運算結(jié)果依然是同一種數(shù)據(jù)類型。因此,整數(shù)除于整數(shù),求出來的結(jié)果依然是整數(shù),會損失小數(shù)部分。

解決辦法

//結(jié)果為0.01
//1
CGFloat tFloat = (CGFloat)10/1000;
//2
CGFloat tFloat = (CGFloat)10.0/1000;
  1. 對結(jié)果進(jìn)行了類型轉(zhuǎn)換
  2. 10.0是浮點型,1000是整型,因此會將4自動類型提升為浮點型后再進(jìn)行運算
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容