Objective-C 之?dāng)?shù)組,字典,集合

一. 數(shù)組類

1. NSArray 類

a. 存儲(chǔ)指定對象的集合,其數(shù)組本身不能改變.

b. 指定初始化方法:initWithObject:@"",@"",@"",nil //注意nil是結(jié)束標(biāo)識(shí),類似于C語言中字符串結(jié)束標(biāo)識(shí)'\0'

便利構(gòu)造器方法:arrayWithObject:@"",@"",@"",nil

初始化語法糖形式Eg: NSArray *array = @[@"",@"",@""];//次處不需要nil結(jié)尾

c. C語言中獲取數(shù)組元素個(gè)數(shù)的方法為 sizeof(array) / sizeof(array[0])在OC數(shù)組中獲取數(shù)組元素對象的個(gè)數(shù)的方法為:

array.count為NSArray實(shí)例化對象的一個(gè)屬性.

d. 獲取指定下標(biāo)元素對象的實(shí)例方法

objectAtIndex:(NSUInteger)或語法糖形式 array[下標(biāo)]

e. 判斷一個(gè)對象是否存在在數(shù)組中的實(shí)例方法

containsObject:(id) 返回值為BOOL型

f. 獲取指定對象在數(shù)組中的下標(biāo)的實(shí)例方法

indexOfObject:@"";返回值為long型

g. NSString類對象轉(zhuǎn)化成為NSArray對象實(shí)例方法(通過哪個(gè)特殊字符進(jìn)行分割,由字符串調(diào)用的實(shí)例方法)

componentsSeparatedByString:@"*"表示以*為分割賦將字符串分割成為倆個(gè)子字符對象存放在指定數(shù)組中

h. 以指定字符對象連接數(shù)組元素對象返回字符串對象(由數(shù)組調(diào)用的實(shí)例方法)

componentsSeparatedJoinedByString:@""


2. NSMutableArray 類

a. NSMutableArray為NSArray的子類.即初始化可以用NSArray的方法以及便利構(gòu)造器方法

也可以創(chuàng)建空的數(shù)組

b. 順序添加對象的實(shí)例方法 addObject:@"";

c. 尾部追加Array的實(shí)例方法addObjectsFromArray:@"";

d. 在指定下標(biāo)處,添加對象的實(shí)例方法insertObject:@"" atIndex:

e. 替換指定下標(biāo)對象的實(shí)例方法 replaceObjectAtIndex:(NSUInteger) withObject:@"" //語法糖 array[i] = @"";

f. 交換可變數(shù)組中兩個(gè)指定下標(biāo)的元素對象的實(shí)例方法 exchangeObjectAtIndex:(NSUInteger) withObjectAtIndex:(NSUInteger)

g. 刪除整個(gè)數(shù)組中的元素對象的實(shí)例方法 removeAllObjects

h. 刪除指定下標(biāo)的元素對象的實(shí)例方法 removeObjectAtIndex:(NSUInteger)

i. ?刪除最后一位元素對象的實(shí)例方法 removeLastObject

二. 字典類

1. NSDictionary 類

a. 創(chuàng)建字典對象的初始化方法中提供的鍵值對是值,鍵組合,可以通過方法名看到先寫值,再寫鍵.(nil為結(jié)束標(biāo)識(shí))

Eg:

NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"(Object)",@"(Key)",nil]

b. 可以通過鍵數(shù)組與值數(shù)組對NSDictionary的對象進(jìn)行初始化操作(鍵數(shù)組與值數(shù)組的元素對象個(gè)數(shù)必須相等)

Eg:

NSDictionary *dic = [NSDictionary dictionaryWithObjects:@[@"",@""] forKeys:@[@"",@""]];

c. 字典的語法糖形式創(chuàng)建對象(鍵值對利用:分割,左為鍵,右為值,@{}創(chuàng)建對象)

Eg: ? ?NSDictionary *dic = @{@"name":@"Carson",@"age":@23};鍵值對成對出現(xiàn)

d. NSDictionary 類實(shí)例化對象的方法與屬性

獲取鍵值對的個(gè)數(shù): ? count返回值為NSUInteger類型

獲取所有鍵數(shù)組實(shí)例方法: ? ? ?(返回值為數(shù)組類型) allKeys

獲取所有值數(shù)組實(shí)例方法: ? ? ?(返回值為數(shù)組類型) allValues


2. NSMutableDIctionary 類

a. 根據(jù)已有不可變字典對象來創(chuàng)建可變字典對象的實(shí)例方法

dictionaryWithDictionary:(NSDictionary *)

b. 添加鍵值對的實(shí)例方法

- (instancetype) setObject:(id) forKey:(key)

c. 修改鍵所指的值得方法

- (instancetype) setObject:(id) forKey:(key)

d. 刪除指定鍵值的方法

- (instancetype) removeObjectForKey(key)

e. 刪除字典中所有鍵值對的方法

- (instancetype) removeAllObjects


三. 集合類

1. NSSet 類

a. 特點(diǎn):集合中的元素對象具有互異性,無序性的特點(diǎn),相同的對象只能存在一個(gè).

b. NSSet類的初始化方法:initWithObjects:(id)...nil便利構(gòu)造器:setWithObjects:(id),nil // nil為結(jié)束標(biāo)識(shí)

c. 獲取NSSet類實(shí)例化對象中元素對象的個(gè)數(shù)為的屬性為 .count

d. 隨便取出NSSet的實(shí)例化對象中的一個(gè)元素對象 anyObject

e. 將NSSet對象轉(zhuǎn)化成為NSArray對象并可以進(jìn)行遍歷操作

Eg:NSArray *array = [set allObjects];//set為一個(gè)集合

f. 通過NSSet集合中元素互異性則可以剔除數(shù)組中重復(fù)的元素對象.

Eg:NSSet *set = [NSSet setWithArray:array];

2. NSMutableSet 類

a. 特點(diǎn):為一個(gè)可變的集合,可以對集合進(jìn)行增,刪,改的操作.

b. 將不可變集合對象轉(zhuǎn)化成為可變集合對象

Eg: NSMutableSet *mutableSet = [NSMutableSet setWithSet:set];

c. 增加一個(gè)元素對象

Eg: [mutableSet addObject:@""];

d. 刪除一個(gè)元素對象

Eg:[mutableSet removeObject:@""];

e. 刪除所有元素對象

Eg:[mutableSet removeAllObjects];

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末收夸,一起剝皮案震驚了整個(gè)濱河市纤泵,隨后出現(xiàn)的幾起案子蜡感,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,651評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件怕篷,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)遭殉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來博助,“玉大人险污,你說我怎么就攤上這事「辉溃” “怎么了蛔糯?”我有些...
    開封第一講書人閱讀 162,931評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長窖式。 經(jīng)常有香客問我蚁飒,道長,這世上最難降的妖魔是什么萝喘? 我笑而不...
    開封第一講書人閱讀 58,218評(píng)論 1 292
  • 正文 為了忘掉前任淮逻,我火速辦了婚禮,結(jié)果婚禮上阁簸,老公的妹妹穿的比我還像新娘爬早。我一直安慰自己,他們只是感情好启妹,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,234評(píng)論 6 388
  • 文/花漫 我一把揭開白布筛严。 她就那樣靜靜地躺著,像睡著了一般翅溺。 火紅的嫁衣襯著肌膚如雪脑漫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,198評(píng)論 1 299
  • 那天咙崎,我揣著相機(jī)與錄音优幸,去河邊找鬼。 笑死褪猛,一個(gè)胖子當(dāng)著我的面吹牛网杆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,084評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼碳却,長吁一口氣:“原來是場噩夢啊……” “哼队秩!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起昼浦,我...
    開封第一講書人閱讀 38,926評(píng)論 0 274
  • 序言:老撾萬榮一對情侶失蹤馍资,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后关噪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鸟蟹,經(jīng)...
    沈念sama閱讀 45,341評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,563評(píng)論 2 333
  • 正文 我和宋清朗相戀三年使兔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了建钥。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,731評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡虐沥,死狀恐怖熊经,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情欲险,我是刑警寧澤镐依,帶...
    沈念sama閱讀 35,430評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站盯荤,受9級(jí)特大地震影響馋吗,放射性物質(zhì)發(fā)生泄漏焕盟。R本人自食惡果不足惜秋秤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,036評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望脚翘。 院中可真熱鬧灼卢,春花似錦、人聲如沸来农。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,676評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沃于。三九已至涩咖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間繁莹,已是汗流浹背檩互。 一陣腳步聲響...
    開封第一講書人閱讀 32,829評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留咨演,地道東北人闸昨。 一個(gè)月前我還...
    沈念sama閱讀 47,743評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親饵较。 傳聞我的和親對象是個(gè)殘疾皇子拍嵌,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,629評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容