当 -registerDefaults:仅接受一个NSUserDefaults方法时, -setFloat:forKey:和 -floatForKey:的重点是什么? NSDictionary,它不能容纳任何原始数据类型 - 只有对象。
相反,似乎我必须使用 -setObject:forKey 和 -objectForKey:并且只存储NSNumber对象,如果我想能够为我的浮动提供任何实际的默认值值。
我在这里缺少什么?
答案 0 :(得分:3)
setFloat:
只是一种创建NSNumber的便捷方法,然后将其传递给setObject:
。 floatForKey:
反之亦然。
NSDictionary
只能保存对象类型,因此您需要在适当的对象中包装基元。所以,是的,你需要做你正在做的事情来设置默认默认值。
如果您可以直接在NSDictionary上使用这些方法会很好,这将是一个非常简单的类别。