Objective-C拓展了C,自然很多用法是和C一致的敛助。比如浮點數(shù)轉(zhuǎn)化成整數(shù),就有以下四種情況屋确。?
1.簡單粗暴纳击,直接轉(zhuǎn)化
float f = 1.5;
int a;
a = (int)f;
NSLog("a = %d",a);
輸出結(jié)果是1。(int)是強制類型轉(zhuǎn)化攻臀,丟棄浮點數(shù)的小數(shù)部分焕数。
2.高斯函數(shù),向下取整
float f = 1.6;
int a;
a = floor(f);
NSLog("a = %d",a);
輸出結(jié)果是1刨啸。floor()方法是向下取整堡赔,類似于數(shù)學中的高斯函數(shù) [].取得不大于浮點數(shù)的最大整數(shù),對于正數(shù)來說是舍棄浮點數(shù)部分设联,對于復(fù)數(shù)來說善已,舍棄浮點數(shù)部分后再減1.
3.ceil函數(shù),向上取整离例。
float f = 1.5;
int a;
a = ceil(f);
NSLog("a = %d",a);4
輸出結(jié)果是2雕拼。ceil()方法是向上取整,取得不小于浮點數(shù)的最小整數(shù)粘招,對于正數(shù)來說是舍棄浮點數(shù)部分并加1啥寇,對于復(fù)數(shù)來說就是舍棄浮點數(shù)部分.
4.通過強制類型轉(zhuǎn)換四舍五入。
floatf =1.5;
inta;a = (int)(f+0.5);
NSLog("a = %d",a);
其中原理非常簡單洒扎,所以就不做詳細說明了辑甜。