如何从匹配 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];
我有一个这样的数组:
{
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];