更改NSMutableArray的元素值

时间:2013-07-25 18:47:51

标签: ios nsmutablearray

我有一个带有NSMutableArrays的NSMutableArray作为

之类的元素
[dataBase insertObject:[NSMutableArray arrayWithObjects:@(100), @"3379429411", @"Cont10", @(0), @(0), @(0), @(0),@"Name1",@"Name2",@"Name3",@"Name4",@"192.168.0.1",@(0),@(0),@(0),@(0), nil] atIndex: 0];

我经常需要找到一个第二个成员等于另一个整数的元素,并改变这个数组的不同值。

我使用for(int n = 0; n < [dataBase count]; n++)之类的标准操作,然后创建临时数组然后[dataBase replaceObjectAtIndex:n withObject:tempArray];

还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

如果我理解你在说什么,试试这个:

为什么不使用数组字典而是使用数组的第二个成员元素作为字典键,而不是使用数组数组。所以像这样:

NSMutableDictionary *dataBase = [[NSMutableDictionary alloc] init];
NSMutableArray *firstRow = [NSMutableArray arrayWithObjects:@(100), @"3379429411", @"Cont10", @(0), @(0), @(0), @(0),@"Name1",@"Name2",@"Name3",@"Name4",@"192.168.0.1",@(0),@(0),@(0),@(0), nil] atIndex: 0];
dataBase[firstRow[1]] = firstRow;

当你需要替换一行时,你需要做的就是:

NSMutableArray *newRow = [self getNewRow];
dataBase[newRow[1]] = newRow;