objective-c學習筆記

Objective-c學習筆記數組

1.使用#import導入頭文件,通常osx命令行開發使用<Foundation/Foundation.h>,圖形界面開發使用<Cocoa/Cocoa.h>緩存

2.OC中字符串再也不是數組,而是變成了NSString類型的對象,凡是涉及到字符串的都是對象,另外,當靜態字符串賦值的時候,應該要使用@作標識,例如@「helloworld」數據結構

3.OC中的真假爲BOOL類型,同時真爲YES假爲NO,佔八位,系統依靠最低位來肯定,最低位爲0爲NO,最低位不爲零,爲YES,因此,比較BOOL的時候,應該和NO比較app

4./tmp爲系統緩存目錄,系統重啓的時候被清空函數

5.id類型是oc的通用指針,該類型能夠指向任何對象,可是最好不要濫用 學習

6.oc的接口定義模式以下spa

@interface命令行

{指針

@屬性的訪問權限component

屬性值

}

-(方法的返回類型)方法名:(參數1的類型)參數名,(參數二的類型)參數名;

@end

7.oc的接口實現以下

@implemention

-(方法的返回類型)方法名:(參數1的類型)參數名,(參數二的類型)參數名

{

函數實現/方法實現

}

@end

8.OC調用方法使用中括號,例如 [實例指針  方法名:參數1,參數2]

9.在類的實現中,能夠直接訪問類的實例變量,這是由於直接訪問的時候OC編譯器隱藏傳遞了一個參數self

10.最簡單的生成新實例的方式爲[類名 new](後面不推薦使用)

11,OC自己不支持多繼承,可是能夠用委託機制來實現多繼承

12.在子類中想要調用父類的方法可使用super關鍵字,例如 [super init]

13.定義接口的時候能夠指明繼承的父類,例子以下

@interface 接口名:父類名

@end

14.使用NSLog能夠輸出,相似於printf

15.NSLog能夠打印對象,適應%@參數便可,這樣系統會自動調用該對象的description方法

16.屬性的存取方法,存方法使用set+屬性名 取方法直接使用屬性名,假設屬性爲xxx,則爲

-(void)setxxx:(id)xxx -(id)xxx;

17.oc使用.m格式的源文件和.h格式的頭文件,一般申明放在.h文件,實現放在.m文件

18.@class 類名 該關鍵字通常表示導入類,在.h文件中使用的比較多,不想包含頭文件的時   候使用該關鍵字

19.範圍結構體 NSRange ,表示數字的起點和大小,參數均爲無符號整形,賦值有函數NSMakeRange()函數

20.座標結構體CGPoint,參數均爲浮點型,表示座標,CGPointMake快速賦值

     圖形結構體CGSize 參數爲浮點型,CGSizeMake快速賦值

     矩形結構體CGRect 含有兩個結構體類型的參數,快速賦值爲CGRectMake

21.字符串類NSString的方法

stringWithFormat 建立新字符串

length 獲取字符串個數

isEqualToString 字符串比較

compare 字符串比較

NSCompareResult 比較結構枚舉,取值包括NSOrderAscending 等三個

hasPrefix 檢測字符串是否以指定字符串開頭

hasSuffix 檢測字符串是否以指定字符串結尾

rangeOfString 檢測字符串中是否還有指定字符串 沒有返回的NSRange中location爲NSNotFound

 

22.NSString是運行時不可變的,若是須要運行時可變的字符串須要NSMuteableString

stringWithCapacity 指定初始化容量

appendString 附加子串

appendFormat  附加格式化字符串

deleteCharactersInRange 刪除字符串中指定位置的字符

由於NSMuteableString是NSString的子類,因此NSString的函數NSMuteableString 都能用

 

22.NSArray

NSArray中能夠放入任意類型的對象,可是不能存放原生數據類型

arrayWithObjects 初始化,指定原始數據列表

count 得到元素個數

objectAtIndex 獲取特定位置的元素

componentsJoinedByString 使用特定字符串連接全部元素成爲一個新的字符串返回

 

22,可變數組NSMutableArray

arrayWithCapacity 指定初始化容量

addObject 在末尾添加對象

removeObjectAtIndex 移除指定位置的元素

objectEnumerator 獲取數組對象的枚舉器

 

23.枚舉,使用枚舉器

while(id thing = [enum nextobject])

{

//dosomething

}

24.快速枚舉

10.5以後的新特性,while(NSString* str in array){//dosomething}

 

25.NSDictionary字典

dictionaryWithObjectsAndKeys 建立鍵值對,初始化對象

objectForKey 經過鍵獲取對象

 

26.可變字典NSMutableDictionary

dictionaryWithCapacity 初始化可變字典,指定容量

setObject  forkey 添加鍵值對

removeObjectForKey 刪除鍵值對

 

27.對於NSString和NSArray,不要繼承,最好使用複合

 

28.NSNumber數值類

用於將原生數據類型裝箱

numberWithChar  numberWithInt numberWithFloat numberWithBool 裝箱

charValue intValue floatValue boolValue stringValue 拆箱

 

29.NSNumber實際上是NSValue的子類,NSValue能夠封裝任何值,

valueWithBytes 指定數據長度和數據類型就能裝箱

getValue 用於提取數值

 

30.NSNull

nil的裝箱數據結構,只有一個方法null

31.oc的方法分爲兩種,分別是實例方法和類方法,使用-定義的是實例方法 使用+定義的方法是類方法,類方法在沒有實例的時候能夠直接經過類名調用,如init方法,以下

類方法 +void init:(int)a,(int)b;

實例方法 -void init:(int)a,(int)b;

相關文章
相關標籤/搜索