陣列遍歷排序

2021-07-09 22:34:10 字數 1841 閱讀 8362

//   集合的遍歷             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...