I want to create a bunch of objects (say 100+) and store them in an array. Each object has, say, 10 instance variables, all declared as properties. My question is, how do I access a specific object.property in the array? In other words, I want to access the bar property in object foo, which is stored at baz. Is it just baz.foo.bar = newValue? Or do I have to do something like tempValue = [baz objectAtIndex: 26]; tempValue.bar = newValue; [baz replaceObjectAtIndex: 26 withObject: tempValue]; I really hope it's the first one and not the second. Thanks in advance for your help.