NSUserDefaultsにmutableなオブジェクトを保存しても、取り出すとimmutableなオブジェクトが返る、とクラスリファレンスには書いてある。 Values returned from NSUserDefaults are immutable, even if you set a mutable object as the value. For example, if you set a mutable string as the value for "MyStringDefault", the string you later retrieve using stringForKey: will be immutable. 実際にはmutableなオブジェクトが返されることもあるようだけど、その挙動が保証されているわけではない。ということで、mutableなオブジェクトが必