排序数组指定的索引IOS

时间:2015-05-04 16:38:23

标签: ios objective-c nsmutablearray nsarray nsmutabledictionary

我'想要根据名为id的对象过滤NSARRAY,我想要过滤并想要成为NSARRAY中的第一个特定的ID ID。

我将以下ID存储为NSNUMEBR

         NSNumber *A = [NSNumber numberWithInt:1122];
         NSNumber *B = [NSNumber numberWithInt:1345];
         NSNumber *C = [NSNumber numberWithInt:1667];
         NSNumber *D = [NSNumber numberWithInt:1223];
         NSNumber *E = [NSNumber numberWithInt:1213];
         NSNumber *F = [NSNumber numberWithInt:1123];
         NSNumber *G = [NSNumber numberWithInt:1555];
         NSNumber *H = [NSNumber numberWithInt:1666];
         NSNumber *I = [NSNumber numberWithInt:1567];

这些是我想要过滤的ID并希望成为我NSARRAY的第一个ID(可以NSMutableArray进行操作)

编辑1:

NSARRAY基本上将id对象作为

Ids = [dict valueForKey:@"id"];

选择性ID存储在NSNUMBER A到I

2 个答案:

答案 0 :(得分:0)

目前还不清楚你在问什么,正如投票和评论所表明的那样。但是,让我们看看我们是否可以提供帮助。我认为以下伪代码算法是您要求的:

MutableArray frontItems, rearItems;

for every item in sourceArray
   if item["id"] is in the collection of specific IDs
   then add item to end of frontItems
   else add item to end of rearItems

add rearItems to end of frontItems to give result

在Objective-C中写一下,我认为你有你想要的东西。

HTH

答案 1 :(得分:0)

// Creat数组包含所有项目:A-> I

NSNumber *A = [NSNumber numberWithInt:1122];
NSNumber *B = [NSNumber numberWithInt:1345];
NSNumber *C = [NSNumber numberWithInt:1667];
NSNumber *D = [NSNumber numberWithInt:1223];
NSNumber *E = [NSNumber numberWithInt:1213];
NSNumber *F = [NSNumber numberWithInt:1123];
NSNumber *G = [NSNumber numberWithInt:1555];
NSNumber *H = [NSNumber numberWithInt:1666];
NSNumber *I = [NSNumber numberWithInt:1567];

NSMutableArray *arr = [[NSMutableArray alloc] initWithObjects:A,B,C,...,I, nil];

for (NSNumber *idx in arr) {
    // To do
}
相关问题