-1

removeobjectsforkeys をプログラムで使用して、辞書の nsarray から 1 つ以上のキーと値のペアを削除する方法を知っている人なら誰でも知っています。

この辞書の配列があるとしましょう:

myArray=
myList1
{
    gender = @"male"
    id = 11231
    name = @"John doe"
    picture = @"n/a"
    state = @"CA"
    city = @"Los Angeles"
}
myList1
{
    gender = @"female"
    id = 13123123
    name = @"Teresa doe"
    picture = @"n/a"
    state = @"CA"
    city = @"Los Angeles"
}

removeobjectsforkeys を使用して、リクエストに応じて辞書の 1 つ以上のキーを削除する方法。

私は本当にあなたの助けに感謝します

4

3 に答える 3

3

変更可能な辞書の変更可能な配列がある場合、次のように配列のすべての要素からキーとそのオブジェクトを削除できます。

[myArray makeObjectsPerformSelector:@selector(removeObjectForKey:) withObject:@"key2"];

withObject: パラメータにキーの配列を渡すことで、複数形の removeObjectsForKeys: を使用することもできます。

于 2013-09-05T05:33:40.067 に答える
0

変数にNSMutableArrayandを使用するとします。NSMutableDictionary

for (NSMutableDictionary *dict in myArray) {
    if ([[dict objectForKey: @"city"] isEqualToString:@"Los Angeles"]) {
        [dict removeObjectForKey:@"city"]
    }
}
于 2013-09-05T05:29:30.150 に答える
0

ここでは、辞書の配列を使用して単純なロジックを配置しました(両方とも変更可能です) 。

for(int i = 0 ; i < arrayOfDic.count ; i ++)
{
       [[arrayOfDic objectAtIndex:i] removeObjectForKey:@"keyName1"];
       [[arrayOfDic objectAtIndex:i] removeObjectForKey:@"keyName2"];
       .
       .
       .
       [[arrayOfDic objectAtIndex:i] removeObjectForKey:@"keyName_N"];
}
于 2013-09-05T05:26:44.483 に答える