Objective-C中的NSNumber數字對象

有時我們會需要把基本數據類型轉換成對象來處理,比如,把基本類型放入到集合中(cocoa中集合只能存放對象,無法存放基本數據類型),OC中提供了數字對象“NSNumber”可以將基本數據類型“包裝”成對象。NSNumber的父類是NSValue。

1. 數字對象的初始化

//類方法創建數字對象,不需要內存管理
int number = 10;
NSNumber *intNumber = [NSNumber numberWithInt:number];
BOOL isBool = YES;
NSNumber *boolNumber = [NSNumber numberWithBool:isBool];

//實例方法創建數字對象,需要內存管理
float pi = 3.14;
NSNumber *piNumber = [[NSNumber alloc] initWithFloat:pi];
char character = 'a';
NSNumber *cNumber = [[NSNumber alloc] initWithChar:character];

2. 數字對象的轉換

//還原成基本數據類型
int month = [intNumber intvalue];
Bool isOpen = [boolNumer boolValue];
float length = [piNumber floatValue];
char firstName = [cNumber charValue];


發佈了60 篇原創文章 · 獲贊 12 · 訪問量 40萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章