場景: 在一個提款場景中,當(dāng)用戶點(diǎn)擊提取所有的資金后,由于從后臺傳過來的值是例如:100.59999999,而我們的精度是獲取小數(shù)點(diǎn)后兩位,當(dāng)直接使用[NSString stringWithFormat:@"%.2lf",money]時,截取到的字符是100.60,當(dāng)用戶點(diǎn)擊確定提取時,我們拿到100.60 與 100.599999 進(jìn)行驗(yàn)證則會導(dǎo)致輸入提取金額一直比剩余金額大,在這種情況下我們需要使用floor(money*100)/100 去處理顯示問題,這樣會保證所顯示和輸入的金額一直比實(shí)際的金額小,從而避免這種情況。
iOS關(guān)于數(shù)值處理函數(shù):
1. ceil(x)返回不小于x的最小整數(shù)值(然后轉(zhuǎn)換為double型)。
2. floor(x)返回不大于x的最大整數(shù)值。
3. round(x)返回x的四舍五入整數(shù)值。