陣列類,可存放oc物件,不可存放int float 的基本資料型別和cgrect這兩種原始資料
陣列中物件的順序是以索引(index)標記的
陣列分為可變陣列和不可變陣列;可變陣列可進行增刪改得操作,不可變陣列不能進行增刪該
不可變陣列:
nsarray *array = [[nsarray alloc]initwithobjects:@"000",@"111",@"222", nil];//其所因分別為0,1,2
//獲取陣列長度
int arraycount = [array count];
//根據索引取值
nsstring *str = [array objectatindex:2];
//str 的值為 222
//遍歷陣列,取出陣列中的所有元素
for (int a = 0; a//簡單遍歷方式
for (nsstring *string2 in array)
可變陣列:
//初始陣列長度的建立方法,但是新增object時如果超過了這個長度,陣列長度會增加
nsmutablearray *marry1 = [[nsmutablearray alloc]initwithcapacity:10];
//初始化變數的建立方法
nsmutablearray *marry2 = [[nsmutablearray alloc]initwithobjects:@"000",@"111",@"222", nil];
//增加元素單個元素
[marry1 addobject:@"333"];
[marry2 addobject:@"444"];
//刪除陣列內所有物件
[marry1 removeallobjects];
//刪除最後乙個物件
[marry2 removelastobject];
//刪除指定物件
[marry2 removeobject:@"111"];
//根據索引刪除物件
[marry2 removeobjectatindex:0];
//在制定索引處插入物件
[marry2 insertobject:@"555" atindex:1];
//制定索引的物件替換
[marry2 replaceobjectatindex:1 withobject:@"666"];
//根據索引交換兩個物件的位置
[marry2 exchangeobjectatindex:0 withobjectatindex:1];
//使用迴圈新增多個物件
for (int i = 0; i < 10; i ++)
//遍歷操作與不可變陣列相同
字典分為可變字典和不可變字典,區別:是否可以進行增刪改操作
與陣列相比,字典主要的特點是,字典根據自己新增的鍵(key)來查詢值(value),而不是按系統定義的索引(index)
不可變字典
//建立字典
nsdictionary *dic = [[nsdictionary alloc]initwithobjectsandkeys:@"value0",@"key0",@"value1",@"value1",@"value2",@"value2", nil];
//查詢字典中鍵值對的個數
int count = [dic count];
//查詢所有的鍵
nsarray *arrayforallkeys = [dic allkeys];
//查詢所有的值
nsarray *arrayforallvalues = [dic allvalues];
//根據key查詢對應的value
nsstring *string = [dic objectforkey:@"key2"];
//迴圈遍歷
for (int i = 0; i
//陣列中存放int float
int a = 1;
float b = 2.5;
nsnumber *aa = [nsnumber numberwithint:a];
nsnumber *bb = [nsnumber numberwithfloat:b];
nsarray *array = [nsarray arraywithobjects:aa,bb, nil];
//以加號方法的形式建立
nsdictionary *dic1 = [nsdictionary dictionarywithobjectsandkeys:@"value0",@"key0",@"value1",@"value1",@"value2",@"value2", nil];
可變字典
//建立可變字典
nsmutabledictionary *mdic = [nsmutabledictionary dictionary];
//可變字典也可以初始化鍵值對建立
nsmutabledictionary *mdic1 = [[nsmutabledictionary alloc]initwithobjectsandkeys:@"value0",@"key0",@"value1",@"value1",@"value2",@"value2", nil];
//向字典中增加鍵值對時,若字典中該key不存在,則新增;若字典中該key已存在,則修改對應的value
[mdic setvalue:@"value" forkey:@"key0"];//增加
[mdic1 setobject:@"value" forkey:@"key0"];//修改
//刪除指定key對應的鍵值對
[mdic1 removeobjectforkey:@"key2"];
//刪除所有的鍵值對
[mdic1 removeallobjects];
//查詢遍歷操作同不可變字典
//使用nslog輸出時,字典使用{}包圍內容,陣列使用()包圍內容
IOS學習筆記(五)
command 塊左移 comamnd 塊右移 tab 接受 自動完成提示 esc 顯示 提示 command b 編譯 command r 執行 control f 前移游標 control b 後移游標 control p 游標移到上一行 control n 游標移到下一行 control a ...
iOS學習筆記之字典排序
有時候拼接引數會用到字典傳過來的引數而且是要排序的,下面我們看看應該怎麼去做!nsdictionary params 這個引數字典中一共有4個key name hometown userid phone。我們該怎麼樣把這四個字串按公升序排列呢?首先我們定義乙個陣列,儲存字典中的所有key值 nsar...
(c c 學習筆記五)陣列和指標
一.陣列指標和指向陣列的指標變數 乙個變數有乙個位址,乙個陣列包含若干個元素,每個陣列元素都在記憶體中占用儲存單元,它們都有相應的位址。所謂陣列的指標是指數組的起始位址,陣列元素的指標是指數組元素的位址。乙個陣列是由連續的一塊記憶體單元組成的,陣列名就是這款連續記憶體單元的首位址。例 int a 1...