为什么不[NSDictionary allKeys]返回一组?

zou*_*oul 19 cocoa nsdictionary

是否有理由NSDictionary将其键返回NSArray而不是NSSet?文档已经指出数组中键的顺序是未定义的,使用集合听起来合乎逻辑.

Chu*_*uck 2

在 API 设计中,集合往往会被忽视。大多数情况下它们都会被包含在内,但通常会在所有其他标准数据结构之后很久才包含在内。除此之外,除了最近的 NSFastEnumeration 之外,Objective-C \xe2\x80\x94 中没有通用的集合或序列协议,每个集合类都完全独立于所有其他 \xe2\x80\x94 并且它在编写返回数组的 API 后,切换到集合就变得非常困难。

\n

  • *咳嗽* `NSEnumerator` 至少从 10.0 就已经存在了 (3认同)