NSEnumerator
NSEnumerator
абстрактный класс, экземпляры, того, подклассы которых перечисляют наборы других объектов, такие как массивы и словари.
Все методы создания определяются в классах набора — такой как NSArray
, NSSet
, и NSDictionary
— которые обеспечивают особенный NSEnumerator
объекты, с которыми можно перечислить их содержание. Например, NSArray
имеет два метода, возвращающиеся NSEnumerator
объект: objectEnumerator
и reverseObjectEnumerator
. NSDictionary
также имеет два метода, возвращающиеся NSEnumerator
объект: keyEnumerator
и objectEnumerator
. Эти методы позволяют Вам перечислить содержание словаря ключом или значением, соответственно.
Вы отправляете nextObject
неоднократно к недавно создаваемому NSEnumerator
объект иметь его возвращает следующий объект в исходном наборе. Когда набор исчерпывается, nil
возвращается. Вы не можете «сбросить» перечислитель после того, как он исчерпал свой набор. Для перечисления набора снова Вам нужен новый перечислитель.
Подклассы перечислителя, используемые NSArray
, NSDictionary
, и NSSet
сохраните набор во время перечисления. Когда перечисление исчерпывается, набор выпущен.
Наследование
-
NSObject
-
NSEnumerator
-
NSDirectoryEnumerator
-
NSObject
-
NSEnumerator
-
NSDirectoryEnumerator
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSFastEnumeration
-
NSObjectProtocol
-
Печатаемый
-
NSFastEnumeration
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
allObjects allObjects
СвойствоМассив неперечислимых объектов. (только для чтения)
Объявление
Swift
var allObjects: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *allObjects
Обсуждение
Этот массив содержит все остающиеся объекты в перечислимом наборе. Это не содержит объекты, уже перечисленные с предыдущим
nextObject
сообщения.Доступ к этому свойству исчерпывает набор перечислителя так, чтобы последующие вызовы
nextObject
возвратитьсяnil
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает следующий объект из перечисляемого набора.
Объявление
Swift
func nextObject() -> AnyObject?
Objective C
- (id)nextObject
Возвращаемое значение
Следующий объект от набора, перечисляемого, или
nil
когда были перечислены все объекты.Обсуждение
Следующий код иллюстрирует как этот метод работы с помощью массива:
NSArray *anArray = // ... ;
NSEnumerator *enumerator = [anArray objectEnumerator];
id object;
while ((object = [enumerator nextObject])) {
// do something with object...
}
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.