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)制類型轉(zhuǎn)化漓穿,丟棄浮點(diǎn)數(shù)的小數(shù)部分嗤军。
2.高斯函數(shù),向下取整
float f = 1.6;
int a;
a = floor(f);
NSLog("a = %d",a);
輸出結(jié)果是1晃危。floor()方法是向下取整叙赚,類似于數(shù)學(xué)中的高斯函數(shù) [].取得不大于浮點(diǎn)數(shù)的最大整數(shù),對(duì)于正數(shù)來說是舍棄浮點(diǎn)數(shù)部分僚饭,對(duì)于復(fù)數(shù)來說震叮,舍棄浮點(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ù)來說是舍棄浮點(diǎn)數(shù)部分并加1击罪,對(duì)于復(fù)數(shù)來說就是舍棄浮點(diǎn)數(shù)部分.
4.通過強(qiáng)制類型轉(zhuǎn)換四舍五入。
float f = 1.5;
int a;
a = (int)(f+0.5);
NSLog("a = %d",a);
其中原理非常簡(jiǎn)單贪薪,所以就不做詳細(xì)說明了媳禁。
摘自:
http://blog.csdn.net/abc649395594/article/details/44730425