检查并从没有索引的nsmutable数组中删除特定字符串

Sel*_*raj 7 xcode objective-c nsstring nsmutablearray ios

在Xcode中,我存储一些NSStringNSMutableArray.

Hello
Here
MyBook
Bible
Array
Name2
There
IamCriminal
Run Code Online (Sandbox Code Playgroud)

用户可以输入字符串.

Name2
Run Code Online (Sandbox Code Playgroud)

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

art*_*mal 21

你可以containsObject在一个方法中使用NSMutableArray

if ([yourArray containsObject:@"object"]) {
    [yourArray removeObject:@"object"];
}
Run Code Online (Sandbox Code Playgroud)

  • @InderKumarRathore,我检查了它的工作 (3认同)
  • 我不认为这会起作用.这里这个方法将检查引用而不是内容. (2认同)
  • 它正在工作,因为你正在采取恒定的字符串.在数组中插入`NSString*str = [[NSString alloc] initWithUTF8String:"hello"];`然后使用你的方法删除`@"hello"` (2认同)

End*_*ker 8

[array removeObject:@"Name2"];
Run Code Online (Sandbox Code Playgroud)

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

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

换句话说,这个方法迭代你的数组比较对象@"Name2".如果对象等于@"Name2",则将其从数组中删除.