Objective-C拓展了C,自然很多用法是和C一致的。比如浮點(diǎn)數(shù)轉(zhuǎn)化成整數(shù),就有以下四種情況。
1.簡(jiǎn)單粗暴,直接轉(zhuǎn)化
float f = 1.5;
int a;
a = (int)f;
NSLog("a = %d",a);
輸出結(jié)果是1。(int)是強(qiáng)制類(lèi)型轉(zhuǎn)化,丟棄浮點(diǎn)數(shù)的小數(shù)部分。
2.高斯函數(shù),向下取整
float f = 1.6;
int a;
a = floor(f);
NSLog("a = %d",a);
輸出結(jié)果是1。floor()方法是向下取整,類(lèi)似于數(shù)學(xué)中的高斯函數(shù) [].取得不大于浮點(diǎn)數(shù)的最大整數(shù),對(duì)于正數(shù)來(lái)說(shuō)是舍棄浮點(diǎn)數(shù)部分,對(duì)于復(fù)數(shù)來(lái)說(shuō),舍棄浮點(diǎn)數(shù)部分后再減1.
3.ceil函數(shù),向上取整。
float f = 1.5;
int a;
a = ceil(f);
NSLog("a = %d",a);
輸出結(jié)果是2。ceil()方法是向上取整,取得不小于浮點(diǎn)數(shù)的最小整數(shù),對(duì)于正數(shù)來(lái)說(shuō)是舍棄浮點(diǎn)數(shù)部分并加1,對(duì)于復(fù)數(shù)來(lái)說(shuō)就是舍棄浮點(diǎn)數(shù)部分.
4.通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換四舍五入。
float f = 1.5;
int a;
a = (int)(f+0.5);
NSLog("a = %d",a);
其中原理非常簡(jiǎn)單,所以就不做詳細(xì)說(shuō)明了。
摘自:
http://blog.csdn.net/abc649395594/article/details/44730425