Array Traversal:
Index traversal
Enumeration traversal:
- nsenumerator* enumerator = [array objectenumerator];
- ID e = nil;
- while (e = [enumerator nextobject])
- {
- NSLog (@ "E =%@", e);
- }
Code block Traversal:
- Example 1: Enumeration traversal
- [Array enumerateobjectsusingblock:^ (ID obj, Nsuinteger idx, boolbool *stop) {
- NSLog (@ "obj =%@", obj);
- }];
- Example 2: Enumeration traversal, which encounters an element (Obj=array[idx] that meets the criteria) exits the traversal.
- [Array enumerateobjectsusingblock:^ (ID obj, Nsuinteger idx, boolbool *stop) {
- if ([obj isequaltostring:@ "E3"]) {
- *stop = YES; //Abort traversal, break
- } Else {
- *stop = NO; //Continue traversal, continue
- }
- }];
Array sorting:
Circular sorting
code block Ordering:
Nsarray *array = @[@12,@23,@8];
Nscomparator Sortblock = ^ (id string1,id string2) {
return [string1 compare:string2];
if ([string1 floatvalue]<[string2 Floatvalue]) {
return nsorderedascending;
}else if ([string1 floatvalue]==[string2 Floatvalue]) {
return nsorderedsame;
}else{
return nsordereddescending;
}
};
Nsarray *sortarray = [array Sortedarrayusingcomparator:sortblock];
NSLog (@ "%@", Sortarray);
}
Array in reverse order:
Traverse reverse Order
Method in reverse order:
[[Array reverseobjectenumerator] allobjects];
Array operation traversal, sort, reverse order