【问题标题】:is it possible to check condition based on expression,objective c是否可以根据表达式检查条件,目标 c
【发布时间】:2014-04-03 16:22:09
【问题描述】:

我的数组arr最初包含以下内容

[A,B,C,D,E,F,G];

现在我想删除 A、B 和 C,我可以这样做

 [arr enumerateObjectsUsingBlock:^(NSString *name, NSUInteger idx, BOOL *stop) {
    if ( [name isEqualToString:@"A"] || [name isEqualToString:@"B"] || [name isEqualToString:@"C"]);
         [arr removeObject:name];
}];

问题:是否可以使用 nsexpression.听起来好像定义一个nsexpression包含A和B和C,然后我们根据nxpression删除元素。

任何想法如何实现这一点。这里欢迎所有的cmets。谢谢。

【问题讨论】:

    标签: ios objective-c enumeration nsexception


    【解决方案1】:

    不要直接使用NSExpression,而是考虑filteredArrayUsingPredicate:,或者,对于NSMutableArrayfilterUsingPredicate:。这将返回一个由谓词过滤的新数组,或者返回根据谓词变异的相同数组。

    另外,在枚举时改变你的集合也不是一个好主意。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-29
      • 1970-01-01
      • 2012-08-05
      • 1970-01-01
      相关资源
      最近更新 更多