ios - 如何根据项目内容从 NSArray 中删除项目

标签 ios objective-c nsarray nspredicate

我正在创建一个 NSStrings 的 NSArray,但是输入的其中一个数组是一组引号:

""

我想知道如何将它们从我的数组中排除,我已经尝试使用谓词但它不起作用。

这是我的代码:

NSString *tempSymbolsString = [tempAxesDictionary objectForKey:@"Symbols"];
        NSArray *tempSymbolsArray = [tempSymbolsString componentsSeparatedByString:@";"];
        tempSymbolsArray = [symbolsArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"SELF != """""]];
        NSLog(@"%@", tempSymbolsArray);

最佳答案

其实比这个还要简单。由于您的数组中只有字符串,因此创建一个可变副本并删除所有出现的 ""。也许是这样的:

NSMutableArray *temp = [tempSymbolsArray mutableCopy];
[temp removeObject:@"\"\""];

这是有效的,因为 removeObject: 将通过 isEqual: 比较对象并删除所有匹配项。

关于ios - 如何根据项目内容从 NSArray 中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20338026/

相关文章:

cocoa - 按匹配出现次数对 NSStrings 的 NSArray 进行排序

ios - 按字母数字属性对自定义对象的 NSArray 进行排序的最佳方法

ios - 自定义 Segue 到导航 Controller 层次结构中的特定 subview

ios - scrollview 在 autolayout xcode 6.4 中不滚动

ios - Cocoa iOS 在 UIView 中制作 CGPoints "Bigger"

ios - 创建 iOS BLE HID 服务?

objective-c - 运行时 xml/json 生成目录内容

ios - 理解如何在 Swift 中初始化 Object-c 对象的问题

ios - 多次拆分 NSStrings

ios - iOS 7 中的 JSON 解析