NSEnumerator is an abstract class, instances of whose subclasses enumerate collections of other objects, such as arrays and dictionaries.
- iOS 8.0+
- macOS 10.10+
- tvOS 9.0+
- watchOS 2.0+
All creation methods are defined in the collection classes—such as
NSDictionary—which provide special
NSEnumerator objects with which to enumerate their contents. For example,
NSArray has two methods that return an
NSDictionary also has two methods that return an
objectEnumerator(). These methods let you enumerate the contents of a dictionary by key or by value, respectively.
nextObject() repeatedly to a newly created
NSEnumerator object to have it return the next object in the original collection. When the collection is exhausted,
nil is returned. You cannot “reset” an enumerator after it has exhausted its collection. To enumerate a collection again, you need a new enumerator.
The enumerator subclasses used by
NSSet retain the collection during enumeration. When the enumeration is exhausted, the collection is released.