Как удалить объекты из NSMutableArray, соответствующие NSNumber - PullRequest
0 голосов
/ 19 октября 2018

У меня есть такой массив:

    {
    id = 8281;
    name = “John”;
    title = “Title One“;
     },
    {
    id = 8729;
    name = “Bob”;
    title = “Title Two“;
    },
    {
    id = 8499;
    name = “Dave”;
    title = “Title Three“;
    }

Я хочу удалить массив, содержащий определенный идентификатор.

В качестве примера, скажем, у меня есть:

NSNumber *removeThis =  '8281' ; 

И мой массив выше называется "историями".

Я пытался:

[stories removeObject:removeThis];

, но это не работает.

Я также пытался:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"id != %@", removeThis];
NSArray *results = [stories filteredArrayUsingPredicate:predicate];

Но данные никогда не бываютудален из массива.

Может кто-нибудь направить меня в правильном направлении?

1 Ответ

0 голосов
/ 19 октября 2018

Я не думаю, что это:

NSNumber *removeThis =  '8281'; 

... это даже допустимый Objective-C.Используйте @(number), чтобы сделать NSNumber литерал, например:

NSNumber *removeThis =  @(8281); 

Оттуда он должен работать точно так, как вы его набрали:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"id != %@", removeThis];
NSArray *results = [stories filteredArrayUsingPredicate:predicate];
...