8

在 Xcode 中,我将一些存储NSStringNSMutableArray.

Hello
Here
MyBook
Bible
Array
Name2
There
IamCriminal

用户可以输入字符串。

Name2

我需要在NSMutableArray不知道字符串索引的情况下删除该特定字符串。我有一些想法,使用迭代。任何其他最佳方式。请提供示例编码。

4

6 回答 6

22

你可以containsObject在一个NSMutableArray

if ([yourArray containsObject:@"object"]) {
    [yourArray removeObject:@"object"];
}

迅速:

if yourArray.contains("object") {
    yourArray = yourArray.filter{ $0 != "object" } 
}
于 2012-12-18T13:07:11.963 回答
8
[array removeObject:@"Name2"];

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

匹配是根据对象对 isEqual: 消息的响应确定的

换句话说,此方法遍历您的数组,将对象与@"Name2". 如果对象等于@"Name2",则将其从数组中删除。

于 2012-12-18T13:23:36.933 回答
0

你可以简单地使用

[yourArray removeObject:stringObjectToDelete];

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

于 2012-12-18T14:14:02.730 回答
0

尝试这个,

BOOL flag = [arrayName containsObject:Str];   

if (flag == YES)
{   
     [arrayName removeObject:Str];
}
于 2012-12-18T13:06:32.323 回答
0
[array removeObject:@"name2"];
于 2012-12-18T13:06:49.143 回答
0

你可以试试这个

for(NSString *string in array)
{
    if([[string lowercasestring] isEqualToSring:[yourString lowercasestring]])
    {
        [array removeObject:string];
        break;
    }
}
于 2012-12-18T13:21:14.617 回答