使用更新的值搜索和修改NSMutableArray对象

时间:2018-09-01 21:15:20

标签: objective-c nsmutablearray

我用下面的方法构造了模型对象。

@property (strong, nonatomic) NSString *id;
@property (strong, nonatomic) NSString *somevalue;
@property (strong, nonatomic) NSString *another value;
@property (strong, nonatomic) NSString *xtz;
@property (strong, nonatomic) NSString *st;
@property (strong, nonatomic) NSMutableArray *sc; 

现在我的可变数组充满了以下示例对象,

  

{a = 1; b = 6; c = 0;},{a = 2; b = 7; c = 0;},{a = 2; b = 8; c = 0;},{a = 3; b = 9; c = 0;}

我的数组中大约有200个这样的对象。现在,我无法找出一种遍历数组的不错方法,例如将'c'的值更新为'1',其中'a'== 1。

我可以这样使用for循环:

for(int i = 0 ; i <myobject.sc.count; i++) {
    NSLog(@"%@",[[myobject sc]objectAtIndex:i]);
}

这将允许我遍历数组。但是仍然面临遍历每个对象中包含的值的问题。也许是嵌套循环?

1 个答案:

答案 0 :(得分:0)

您需要的只是一个简单的循环:

for (WhateverDataType *data in myobject.sc) {
    if (data.a == 1) {
        data.c = 1
        // break // uncomment if you only want to update the first match
    }
}

这为您提供了解决方案的总体思路。具体语法取决于可变数组中实际存在的对象类型。