在iOS中抽取字典的NSArray

问题描述:

我有一个响应数据如下。我有一个由字典填充的数组,我需要从多维数组的每个索引中排序最后两个值。在iOS中抽取字典的NSArray

这是我的数组:

arrayListstatus

(

    { 

    "Applicant_FirstName" = ""; 
    "Applicant_LastName" = ""; 
    "Application_ID" = test; 
    "Application_Status" = ""; 
}, 
    { 
    "Applicant_FirstName" = John; 
    "Applicant_LastName" = Doe; 
    "Application_ID" = 0002; 
    "Application_Status" = Recertify; 
} 
) 

这里是我的代码:

- (NSArray *)subItems 

{ 

NSMutableArray *items = [[NSMutableArray alloc] init]; 

for (int ar = 0; ar < arrayListstatus.count; ar++) 

{ 
    NSArray *thirdarray=[arrayListstatus objectAtIndex:ar] ; 


    NSLog(@"thirdarray %@",third array); 


    [items addObject:thirdarray]; 

} 

NSLog(@"itemss %@",items); 

return items; 


} 
+0

你这是什么意味着在排序?你需要把它放到第三个数组中,然后按哪个属性进行排序?身份或身份? – dirtydanee

+1

就这个问题而言,过去几年一直没有新的东西。 –

+0

我需要整理两者。它应该看起来像{“Application_ID”= test; “Application_Status”=“”;},{ “Application_ID”= 0002; “Application_Status”=重新认证; } – Gayathri

我想这应该做的伎俩:

- (NSArray *)subItems 

{ 

NSMutableArray *items = [[NSMutableArray alloc] init]; 

for (int ar = 0; ar < arrayListstatus.count; ar++) 

{ 

    NSArray *thirdarray= [arrayListstatus objectAtIndex:ar] ; 
NSMutableDictionary *tmpDict = [NSMutableDictionary alloc] init]; 
[tmpDict setObject:[thirdarray objectAtIndex:2] forKey:@"Application_ID"]; 
[tmpDict setObject:[thirdarray objectAtIndex:3] forKey:@"Application_Status"]; 

[items addObject:tmpDict]; 

    [items addObject:tmpDict]; 

} 

NSSortDescriptor *sortDescriptor; 
sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:"Application_Status" ascending:YES], nil]]; 
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor]; 
NSArray *sortedArray = [items sortedArrayUsingDescriptors:sortDescriptors]; 




NSLog(@"itemss %@",items); 

return items; 


} 
+0

如何在数组中使用set对象。它在[tmpDict setObject:[thirdarray setObject:2] forKey:@“Application_ID”]中显示错误; [tmpDict setObject:[thirdarray setObject:3] forKey:@“Application_Status”] ;. – Gayathri

+0

对不起,你是对的,我会编辑代码。 – dirtydanee

+0

实际上,从arrayListstatus返回的对象将返回一个不是数组的字典,对吧?我根据这个编辑过。 – dirtydanee