objective-c - 根据对象的属性获取 NSMutableArray 索引?

标签 objective-c nsmutablearray

我目前正在尝试根据其对象的属性之一来获取我的 NSMutableArray 的索引。

我有一个像这样的 xml 结构:

<timeperiod>
    <Day>
        <Date>20120325</Date>
    </Day>
    <Day>
        <Date>20120326</Date>
    </Day>
</timeperiod>

现在,假设 xml 结构包含一个月中的每一天。

Day 及其所有属性都被添加到 NSMutableArray 中。

我想要的是:根据日期获取数组的索引。

我正在用伪代码想象这样的事情:

-(NSInteger)getIndexFromObjectProperty:(NSString *)property{

   // Givf index from array where date is for example 20120310

   //pseudo
   Return [myClassObject.ObjectArray indexFromProperty:property];


}

我发现了这个:Sorting NSMutableArray By Object's Property

这是从属性排序,但如何从属性0_0获取索引

我还发现了这个:Function to get index from an array of objects having certain value of provided property 如果语法开箱即用,这会有很大帮助:(

任何提示和/或指示都将受到高度赞赏。

提前致谢。

编辑我目前正在尝试给出的答案。将返回更新。

编辑2:办公室将我赶出去,因为他们封锁了大楼...我明天会回复你..

最佳答案

您可以使用 indexOfObjectPassingTest: 方法通过返回 BOOL block 来测试每个对象。

-(NSInteger)getIndexFromObjectProperty:(NSString *)property{
    return [myArray indexOfObjectPassingTest:
        ^(id obj, NSUInteger idx, BOOL *stop) {
            // Return true if obj has the date that you are looking for.
            BOOL res;
            if ([property isEqualTo:[obj dateProperty]]) {
                res = YES;
                *stop = YES;
            } else {
                res = NO;
            }
            return res;
        }];
 }

关于objective-c - 根据对象的属性获取 NSMutableArray 索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9892315/

相关文章:

iphone - 如何检查 NSMutableArray 是否包含包含特定文本的对象?

iphone - 比较两个 NSArray 的最佳实践 & 用两个都没有出现的对象填充第三个?

cocoa - 将 CLLocationCoordinates2D 存储在 NSMutableArray 中

ios - 与 NSUserDefaults 和 NSArray 交互时崩溃

objective-c - 以编程方式将 NSComboBox 绑定(bind)到 NSArrayController

iphone - 当应用程序处于后台时在屏幕上显示警报

iPhone 在核心数据中保存多个对象?

ios - 无法让 NSFileHandleDataAvailableNotification 触发标准输出管道

ios - 使用大小类更改字体大小

iphone - 将一组新数据写入 Plist 而不是覆盖它