// 集合的遍歷 nsset(集合)
nsdictionary *dictionary = [nsdictionary
dictionarywithobjectsandkeys:@"11", @"a", @"22", @"b", @"33", @"c", nil];
nslog(@"%@", dictionary);
for (int i = 0; i < dictionary.count; i++)
// for in 遍歷 (oc一般用它就夠了)
nsarray *array = @[
@"q", @"w", @"e", @"r", @"d", @"f"
];for (nsstring *str in array)
nsmutablearray*array1 = [nsmutablearray
arraywitharray
:array];
for (nsstring *str1 in array)
// 男神小貼士:使用for in 迴圈遍歷集合的時候,不能修改「正在」 遍歷的集合
// 當涉及到需要修改正在迴圈的集合可以複製乙份,迴圈複製出的乙份,而修改自己本身
}for (nsstring *str in array1)
// nsenumerator -- 列舉遍歷
//正序遍歷和倒序遍歷
// nsenumerator *arrayenume = [array1 objectenumerator]; // 正序
nsenumerator *arrayenume = [array1 reverseobjectenumerator]; // 倒序
// 取物件
nsstring *str = nil;
while (str = [arrayenume nextobject])
// 排序
nsarray *sortarray = @[
@"1", @"2", @"3", @"4", @"7"
];// nssortdescriptor -- 排序描述符 (老三步)
nssortdescriptor*des = [[nssortdescriptor
alloc
] initwithkey
:nil
ascending
:yes
];
// yes-
公升序no-降序
// key -- 物件內屬性對應的鍵值,字串這樣的物件使用nil
// 常見儲存描述的陣列(可以新增多個限定條件,比如按姓名排序,然後按年齡)
// 排序並承接完成排序的陣列
// 不可變陣列的方法
// nsarray *descriptors = [nsarray arraywithobject:des];
nsarray
*over = [sortarray sortedarrayusingdescriptors:[
nsarray
arraywithobject:des]];
nslog(@"%@", over);
// 可變陣列
nsmutablearray *mutablearray = [nsmutablearray
arraywitharray:sortarray];
// 可變陣列可以改變自身
[mutablearray sortusingdescriptors:[
nsarray
arraywithobject:des]];
iOS 陣列排序和遍歷
1 擷取陣列 nsarray arr2 arr subarraywithrange nsmakerange 0,4 2 找出索引 nsinteger index arr indexofobject nonnull id 3 讓陣列中每個物件都呼叫某個方法 arr makeobjectsperform...
Go陣列遍歷與排序
目錄 遍歷陣列 陣列排序 go遍歷陣列有兩種方式 1.按照陣列下標進行遍歷 2.用range遍歷 package main import fmt func main 方法一 直接用陣列下標遍歷 for i 0 i len array i fmt.println 方法二 用range遍歷 for va...
陣列操作之遍歷,排序,逆序
陣列遍歷 索引遍歷 列舉遍歷 nsenumerator enumerator arrayobjectenumerator id e nil while e enumeratornextobject 塊遍歷 示例1 列舉遍歷 arrayenumerateobjectsusingblock id obj...