检查并从nsmutablearray中删除一个没有索引的特定字符串

时间:2012-12-18 13:03:50

标签: objective-c ios xcode nsstring nsmutablearray

在Xcode中,我将一些NSString存储在NSMutableArray

Hello
Here
MyBook
Bible
Array
Name2
There
IamCriminal

用户可以输入字符串。

Name2

我需要在不知道字符串索引的情况下从NSMutableArray删除该特定字符串。我有一点想法,使用迭代。任何其他最佳方式。 Plz给出样本编码。

6 个答案:

答案 0 :(得分:21)

您可以在containsObject

中使用NSMutableArray方法
if ([yourArray containsObject:@"object"]) {
    [yourArray removeObject:@"object"];
}

答案 1 :(得分:8)

[array removeObject:@"Name2"];

NSMutableArray的removeObject:方法的文档说明:

  

匹配是根据对象对其的响应确定的   isEqual:message

换句话说,此方法迭代您的数组,将对象与@"Name2"进行比较。如果对象等于@"Name2",则将其从数组中删除。

答案 2 :(得分:0)

试试这个,

BOOL flag = [arrayName containsObject:Str];   

if (flag == YES)
{   
     [arrayName removeObject:Str];
}

答案 3 :(得分:0)

[array removeObject:@"name2"];

答案 4 :(得分:0)

你可以试试这个

for(NSString *string in array)
{
    if([[string lowercasestring] isEqualToSring:[yourString lowercasestring]])
    {
        [array removeObject:string];
        break;
    }
}

答案 5 :(得分:0)

你可以简单地使用

[yourArray removeObject:stringObjectToDelete];

此方法使用indexOfObject:来查找匹配项,然后使用removeObjectAtIndex:删除它们。因此,匹配是根据对象对isEqual:消息的响应来确定的。如果数组不包含anObject,则该方法无效。