前言
前幾天在做一些小功能的時候,忽然發現有的基礎數據轉換都忘記了,於是趕緊整理下記下來!方便自己以後查閱,也給有需要的朋友們一些參考,下面話不多說,來看詳細的內容。
一、NSString
字符串拼接:
NSString *string = [NSString stringWithFormat:@"%@%@",對象,對象];
字符串與int
int intString = [newString intValue]; NSString *string = [NSString stringWithFormat:@"%d",intSteing];
字符串與float
float floatString = [newString floatValue]; NSString *string = [NSString stringWithFormat:@"%f",floatString];
NSData與字符串
NSString *dataStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSData *strData = [dataStr dataUsingEncoding: NSUTF8StringEncoding];
二、NSData
NSData與Byte
NSString *testString = @"1234567890"; NSData *byteData = [testString dataUsingEncoding:NSUTF8StringEncoding]; Byte *testByte = (Byte *)[byteData bytes]; //---------------------------------------------------- Byte byte[] ={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23}; NSData *adata = [[NSData alloc] initWithBytes:byte length:24];
NSData與UIImage
UIImage *aimage = [UIImage imageWithData: imageData]; NSData *imageData = UIImagePNGRepresentation(aimae);
json轉NSData
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic options:NSJSONWritingPrettyPrinted error:&parseError];
三、布爾類型(在計算機內部以int類型存儲)
布爾類型是_Bool(別名BOOL),取值范圍是1或0,其中1可以用TURE和YES表示,0可以用FALSE和NO表示。
四、枚舉類型(在計算機內部以int類型存儲)
如果需要定義一組相關常量,可以采用枚舉類型,把這些常量定義成一個類型,例如游戲在上、下、左、右方向,可以枚舉類型:enum direction{up,down,left,right}.
其中,up從0開始,down是1,以此類推加1。如果不想從0開始,也可以指定初始值,如:enum direction{up=1,down,left,right}
五、nil、NULL、NSNull
1.nil用來給對象賦值(OC的任何對象都屬於id類型),Null則給任何指針賦值,NULL和nil不能互換,nil用於類指針賦值(在OC中類是一個對象,是類的meta-class的實例),而NSNull則用於集合操作,雖然它們表示的都是空值,但使用場合不同。
2.OC有個特性,就是當發送消息給nil對象使,系統返回0值而不是引起異常,這和Java的NullPointerException以及C/C++的程序直接崩潰的處理完全不同,因為nil是對象的合法值,nil對象同樣可以接收消息。
3.nil被定義為空對象,也就是值為0的對象。
六、id類型
1.在OC中最普遍的3種類型就是id、Class和SEL, id就是指向OC對象的指針,它等價於C語言中的void *,可以映射任何對象指針類型指向它,或者映射它指向其他的對象。當然,也可以傳遞任何消息給id,但如果該id不支持這個消息就會返回一個運行時異常。
2.id數據類型可存儲任何類型的對象。從某種意義上說,它是一般對象類型。如果要用基本類型代替,需要對基本數據類型進行封裝。
3.id是一個指向任何一個繼承了Object(或者NSObject)類的對象。需要注意的是,id
是一個指針,所以在使用id的時候不需要加星號。例如:id foo = nil;
4.在OC中,id取代了int類型成為默認的數據類型(在C語言上的函數返回值,int是默認的返回類型)。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作帶來一定的幫助,如果有疑問大家可以留言交流。