title: When to use mutableCopy for NSMutableArray
body: <p>I'm watching an old WWDC video and in their splitViewController example, they do this in the delegate methods for the splitViewController:</p>
  
  <pre><code>NSMutableArray *toolBarItems = [[toolbar items] mutableCopy];
  [toolbarItems removeObjectAtIndex:0];
  [toolbar setItems: toolbarItems animated YES];
  [toolbarItems release];
  </code></pre>
  
  <p>Is there a general good practice in making a mutableCopy like this for your data in certain methods?  I haven't seen this before and as a new programmer, do not know when or why I would/should use a copy of something instead of the original.  I guess I can see it in something like a list where it is already ordered a certain way, and maybe I would make a copy of it to reorder it in a different way.  But I do not know if that's their reasoning here, and if there are OTHER best practices to do this.  Thanks!</p>