[英]How do I delete particular NSString from NSMutableArray
帮助我解决我的问题,我被困在这里。
我也看到了许多与此类似的问题,同样的问题。 但是他们都没有解决我的问题。 这就是为什么我需要在Stack上问类似的问题。
我有NSMutableArray,即NSMutableArray *arrNames = [[NSMutableArray alloc] initWithObjects:@"ABC", @"DEF", @"GHI", nil];
现在我要从该阵列中删除GHI
。 因此,我已经尝试过这种方式,但是没有成功。 请帮我。
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSMutableArray *arrDeletedGTINS = [[NSMutableArray alloc] init];
arrDeletedGTINS = [userDefaults objectForKey:@"deletedArr"];
NSLog(@"%@", arrDeletedGTINS); will give this output ->
(00000000000017)
if ([arrDeletedGTINS containsObject:@"00000000000017"]) {
[arrDeletedGTINS removeObject:@"00000000000017"];
}
[userDefaults setObject:arrDeletedGTINS forKey:@"deletedArr"];
[userDefaults synchronize];
如果我出了点问题,请纠正我。 我正在学习iOS。 请帮我。
这行是您的问题:
arrDeletedGTINS = [userDefaults objectForKey:@"deletedArr"];
NSUserDefault将数组另存为NSArray,而不是NSMutableArray。
因此,将以上行替换为:
arrDeletedGTINS = [[userDefaults objectForKey:@"deletedArr"] mutableCopy];
尝试这个。
您可以在NSMutableArray中使用containsObject方法
if ([arrNames containsObject:@"GHI"]) {
[arrNames removeObject:@"GHI"];
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.