私のアプリには、次のような2つの配列を持つ辞書があります。
NSDictionary *d=[[NSDictionary alloc]initWithObjectsAndKeys:listOfEvents,@"l",arr_distance,@"d", nil];
NSLog(@"%@",d);
d = (
"353.90",
"354.68",
"350.42",
"1.18"
);
l = (
{
Contestant1 = "Jon jones";
Contestant2 = "Anderson silva";
},
{
Contestant1 = "Jon jones";
Contestant2 = "Anderson silva";
},
{
Contestant1 = "Jon jones";
Contestant2 = "Anderson silva";
},
{
Contestant1 = "Jon jones";
Contestant2 = "Anderson silva";
}
);
}
最初の配列で辞書を並べ替えたいのですが、インデックスが変わると、それに応じて2番目の配列のインデックスも変わります。
両方の配列インデックスは互いに関連しています。
@ABCあなたが試したコード
NSDictionary *dict = [NSDictionary dictionaryWithObjects:listOfEvents forKeys:arr_distance];
NSArray *sortedArray = [arr_distance sortedArrayUsingSelector:@selector(compare:)];
NSMutableArray *sortedValues = [NSMutableArray array];
for (NSString *key in sortedArray) {
[sortedValues addObject:[dict valueForKey:key]];
}
NSLog(@"%@",sortedValues);
結果:
{1.18,2563.91,2563.41,2563.39,350,353,354}