如何从匹配 NSNumber 的 NSMutableArray 中删除对象

How do I remove objects from an NSMutableArray matching an NSNumber

我有一个这样的数组:

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

我想删除包含特定 ID 的数组。

举个例子,假设我有:

NSNumber *removeThis =  '8281' ; 

我上面的数组被命名为"stories"。

我试过:

[stories removeObject:removeThis];

但这不起作用。

我也试过:

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

但数据永远不会从数组中删除。

有人能指出我正确的方向吗?

我不这么认为:

NSNumber *removeThis =  '8281'; 

...甚至有效 Objective-C。使用 @(number) 生成 NSNumber 文字,例如:

NSNumber *removeThis =  @(8281); 

从那里开始,它应该与您输入的完全一样:

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