我有一個陣列,其中包含MyClass
的各種實例,它具有四個屬性:int id
,int valueA
,int valueB
和int valueC
。有時,我需要修改一個特定實例的屬性(對於這個例子,假設它是id
等於5
的那個)。通過屬性查找數組中的特定實例
目前,我不喜歡這樣寫道:
MyClass *myClass = [[MyClass alloc] init];
for (int i = 0; i < [myMutableArray count]; i++)
{
myClass = [myMutableArray objectAtIndex:i];
if(myClass.id == 5)
{
myClass.valueA = 100;
myClass.valueB = 200;
myClass.valueC = 300;
[myMutableArray replaceObjectAtIndex:i withObject: myClass];
}
}
有沒有更好的(我很猶豫地說更有效)這樣的方式?
不要命名變量ID - 這是一個保留關鍵字 – Mario
好點。這個例子只是用它。懶得打出'身份證'。 – sangony
有關該點的更多信息,請參閱[帶有「id」屬性的對象的NJSONSerialization](http://stackoverflow.com/q/17634584)。/cc @Mario –