effect_objectC的學習

effect_objectC

第三條

盡量使用@class先告訴編譯器,再在.m文件中導入@import 某個文件

第四條

多用字面量語法,少用與之等價的方法

例子:

NSNumber*number=[NSNumbernumberWithInt:2];// error

NSNumber*number2=@2;// right

intx=2;

floaty=5.23;

NSNumber*number3=@(x*y);

數(shù)組字面值

格式:

需要用[]來初始化

NSArray*array=[[NSArrayalloc]initWithObjects:@"dog",@"cat",@"mouse",nil];

NSArray*array1=@[@"dog",@"cat",@"mouse”];

注意的是:創(chuàng)建字面值數(shù)組時,如果括號中對象有nil的對象,則會拋出異常。如果是第一種方法則不回,但是會出現(xiàn)一個更大的問題

idobject1=@"dog";

idobject2=nil;

idobject3=@"cat";

NSArray*array=[[NSArrayalloc]initWithObjects:object1,object2,object3,nil];/**只有一個dog,因為object2是nil,結束了數(shù)組的創(chuàng)建*/

NSArray*array1=@[object1,object2,object3];

//拋出異常

總結: 所以使用字面值的方法創(chuàng)建會更安全

字面值創(chuàng)建字典

格式:

字典需要用{}來初始化字面值

NSDictionary*dict=[[NSDictionaryalloc]initWithObjectsAndKeys:@"Matt",@"fistname",[NSNumbernumberWithInt:28],@"age",

nil];

NSDictionary*dict2=@{@"firstname":@"Matt",@"age":@28};

總結:局限性:使用字面值創(chuàng)建出來的字符串,數(shù)組,字典對象都是不可變的。想要變成可變版本,需要復制一份。

NSMutableArray*mutabbleArray=[@[@1,@2,@3]mutableCopy];

要點:

1.應該通過下標操作來訪問數(shù)組的下標或字典中的鍵所對應的元素

2.使用字面值創(chuàng)建數(shù)組或者字典時,若值有Nil時,會拋出異常。

第四條

使用常量來代替#define 宏

在實現(xiàn)文件中使用static const來定義”只在編譯單元內可見的常量"

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容