NSSet
NSSet
, NSMutableSet
, и NSCountedSet
классы объявляют программируемый интерфейс к неупорядоченному набору объектов.
NSSet
объявляет программируемый интерфейс для статических наборов отдельных объектов. Вы устанавливаете записи статического набора, когда это создается, и после того записи не могут быть изменены. NSMutableSet
, с другой стороны, объявляет программируемый интерфейс для динамических наборов отдельных объектов. Динамическое — или непостоянный — набор позволяет дополнение и удаление записей в любое время, автоматически выделяя память по мере необходимости.
Можно использовать наборы в качестве альтернативы массивам, когда порядок элементов не важен и производительность в тестировании, содержится ли объект в наборе, рассмотрение — в то время как массивы упорядочиваются, тестирование на членство медленнее, чем с наборами.
NSSet
“бесплатный соединенный мостом” с его Базовым дубликатом Основы, CFSetRef
. Посмотрите Бесплатное Образование моста для получения дополнительной информации о бесплатном образовании моста.
Разделение на подклассы примечаний
Должно быть мало потребности разделения на подклассы. Если необходимо настроить поведение, часто лучше рассмотреть состав вместо разделения на подклассы.
Методы для переопределения
В подклассе необходимо переопределить все его примитивные методы:
Альтернативы разделению на подклассы
Прежде, чем сделать пользовательский класс NSSet
, заняться расследованиями NSHashTable
и соответствующий Базовый тип Основы, Ссылка CFSet. Поскольку NSSet
и CFSet
“бесплатный соединенный мостом”, можно заменить a CFSet
объект для a NSSet
возразите в своем коде (с надлежащим кастингом). Несмотря на то, что они - соответствующие типы, CFSet
и NSSet
не имейте идентичных интерфейсов или реализаций, и можно иногда делать вещи с CFSet
то, что Вы не можете легко сделать с NSSet
.
Если поведение Вы могли бы записать категорию на, Вы хотите добавить дополнения тот из существующего класса NSSet
. Следует иметь в виду, однако, что эта категория будет иметь силу для всех экземпляров NSSet
то, что Вы используете, и это могло бы иметь непреднамеренные последствия. Также Вы могли использовать состав для достижения желаемого поведения.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObjectProtocol
-
NSSecureCoding
-
Печатаемый
-
Reflectable
-
SequenceType
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObject
-
NSSecureCoding
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает пустое множество.
Объявление
Objective C
+ (instancetype)set
Возвращаемое значение
Новое пустое множество.
Обсуждение
Этот метод объявляется прежде всего для использования непостоянных подклассов
NSSet
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает набор, содержащий uniqued набор объектов, содержавшихся в данном массиве.
Объявление
Objective C
+ (instancetype)setWithArray:(NSArray *)
array
Параметры
array
Массив, содержащий объекты добавить к новому набору. Если тот же объект появляется несколько раз в
array
, это добавляется только один раз к возвращенному набору. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к набору.Возвращаемое значение
Новый набор, содержащий uniqued набор объектов, содержавшихся в
array
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает набор, содержащий единственный данный объект.
Объявление
Swift
convenience init(object
object
: AnyObject)Objective C
+ (instancetype)setWithObject:(id)
object
Параметры
object
Объект добавить к новому набору.
object
получает aretain
сообщение, будучи добавленным к набору.Возвращаемое значение
Новый набор, содержащий единственный элемент,
object
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает набор, содержащий объекты в данном списке аргументов.
Объявление
Objective C
+ (instancetype)setWithObjects:(id)
firstObj
,firstObj, ...
Параметры
firstObj
Первый объект добавить к новому набору.
firstObj, ...
Список разделенных запятой значений объектов, заканчивающихся
nil
, добавить к новому набору. Если тот же объект появляется несколько раз в списке объектов, это добавляется только один раз к возвращенному набору. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к набору.Возвращаемое значение
Новый набор, содержащий объекты в списке аргументов.
Обсуждение
Как пример, следующая выборка кода создает набор, содержащий три различных типов элементов (принятие
aPath
выходы):NSSet *mySet;
NSData *someData = [NSData dataWithContentsOfFile:aPath];
NSValue *aValue = [NSNumber numberWithInteger:5];
NSString *aString = @"a string";
mySet = [NSSet setWithObjects:someData, aValue, aString, nil];
Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает набор, содержащий конкретное количество объектов от данного массива C объектов.
Объявление
Objective C
+ (instancetype)setWithObjects:(const id [])
objects
count:(NSUInteger)cnt
Параметры
objects
Массив C объектов добавить к новому набору. Если тот же объект появляется несколько раз в
objects
, это добавляется только один раз к возвращенному набору. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к набору.cnt
Число объектов от
objects
добавить к новому набору.Возвращаемое значение
Новый набор, содержащий
cnt
объекты из списка объектов, указанныхobjects
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращает набор, содержащий объекты от другого набора.
Объявление
Objective C
+ (instancetype)setWithSet:(NSSet *)
set
Параметры
set
Набор, содержащий объекты добавить к новому набору. Каждый объект получает a
retain
обменивайтесь сообщениями, как это добавляется к новому набору.Возвращаемое значение
Новый набор, содержащий объекты от
set
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает новый набор, сформированный путем добавления данного объекта к набору получения.
Объявление
Swift
func setByAddingObject(_
anObject
: AnyObject) -> NSSetObjective C
- (NSSet *)setByAddingObject:(id)
anObject
Параметры
anObject
Объект добавить к набору.
Возвращаемое значение
Новый набор, сформированный путем добавления
anObject
к набору получения.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращает новый набор, сформированный путем добавления объектов в данном наборе к набору получения.
Объявление
Objective C
- (NSSet *)setByAddingObjectsFromSet:(NSSet *)
other
Параметры
other
Набор объектов добавить к набору получения.
Возвращаемое значение
Новый набор, сформированный путем включения объектов
other
к набору получения.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращает новый набор, сформированный путем добавления объектов в данном массиве к набору получения.
Объявление
Swift
func setByAddingObjectsFromArray(_
other
: [AnyObject]) -> NSSetObjective C
- (NSSet *)setByAddingObjectsFromArray:(NSArray *)
other
Параметры
other
Массив объектов добавить к набору.
Возвращаемое значение
Новый набор, сформированный путем включения объектов
other
к набору получения.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Инициализирует недавно выделенный набор с объектами, содержащимися в данном массиве.
Объявление
Swift
convenience init(array
array
: [AnyObject])Objective C
- (instancetype)initWithArray:(NSArray *)
array
Параметры
array
Массив объектов добавить к новому набору. Если тот же объект появляется несколько раз в
array
, это представлено только один раз в возвращенном наборе. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к набору.Возвращаемое значение
Инициализированный набор с содержанием
array
. Возвращенный набор мог бы отличаться, чем исходный получатель.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует недавно выделенный набор с элементами, взятыми из указанного списка объектов.
Объявление
Objective C
- (instancetype)initWithObjects:(id)
firstObj
,firstObj, ...
Параметры
firstObj
Первый объект добавить к новому набору.
firstObj, ...
Список разделенных запятой значений объектов, заканчивающихся
nil
, добавить к новому набору. Если тот же объект появляется несколько раз в списке, он представлен только один раз в возвращенном наборе. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к наборуВозвращаемое значение
Инициализированный набор, содержащий объекты, указан в списке параметров. Возвращенный набор мог бы отличаться, чем исходный получатель.
Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
init (objects:count:) - initWithObjects:count:
Определяемый инициализаторИнициализирует недавно выделенный набор с конкретным количеством объектов от данного массива C объектов.
Объявление
Swift
init(objects
objects
: UnsafePointer<AnyObject?>, countcnt
: Int)Objective C
- (instancetype)initWithObjects:(const id [])
objects
count:(NSUInteger)cnt
Параметры
objects
Массив C объектов добавить к новому набору. Если тот же объект появляется несколько раз в
objects
, это добавляется только один раз к возвращенному набору. Каждый объект получает aretain
обменивайтесь сообщениями, как это добавляется к набору.cnt
Число объектов от
objects
добавить к новому набору.Возвращаемое значение
Инициализированный набор, содержащий
cnt
объекты из списка объектов, указанныхobjects
. Возвращенный набор мог бы отличаться, чем исходный получатель.Обсуждение
Этот метод является определяемым инициализатором для
NSSet
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует недавно выделенный набор и добавляет к нему объекты от другого данного набора.
Объявление
Swift
convenience init(set
set
: NSSet)Objective C
- (instancetype)initWithSet:(NSSet *)
set
Параметры
set
Набор, содержащий объекты добавить к набору получения. Каждый объект сохраняется, как он добавляется.
Возвращаемое значение
Инициализированный набор объектов, содержащий объекты от
set
. Возвращенный набор мог бы отличаться, чем исходный получатель.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует недавно выделенный набор и добавляет к нему элементы другого данного набора.
Объявление
Swift
convenience init(set
set
: NSSet, copyItemsflag
: Bool)Objective C
- (instancetype)initWithSet:(NSSet *)
set
copyItems:(BOOL)flag
Параметры
set
Набор, содержащий объекты добавить к новому набору.
flag
Если
YES
true
, каждый объект вset
получает acopyWithZone:
сообщение для создания копии объекта — объекты должно соответствоватьNSCopying
протокол. В среде управляемой памяти это вместоretain
обменивайтесь сообщениями объект иначе получил бы. Объектная копия тогда добавляется к возвращенному набору.Если
NO
false
, тогда в среде управляемой памяти каждый объект вset
просто получает aretain
обменивайтесь сообщениями, когда это будет добавлено к возвращенному набору.Возвращаемое значение
Инициализированный набор, содержащий элементы
set
. Возвращенный набор мог бы отличаться, чем исходный получатель.Обсуждение
После того, как неизменный s был инициализирован таким образом, он не может быть изменен.
copyWithZone:
метод выполняет мелкую копию. Если у Вас есть набор произвольной глубины, передаваяYES
true
дляflag
параметр выполнит неизменную копию первого уровня ниже поверхности. Если Вы передаетеNO
false
переменчивость первого уровня незатронута. В любом случае переменчивость всех более глубоких уровней незатронута.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует недавно выделенный набор.
Объявление
Swift
init()
Objective C
- (instancetype)init
Возвращаемое значение
Набор.
Обсуждение
Этот метод является определяемым инициализатором
NSSet
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.9 и позже.
См. также
-
количество количество
СвойствоЧисло членов в наборе. (только для чтения)
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
allObjects allObjects
СвойствоМассив, содержащий элементы набора или пустой массив, если набор не имеет никаких элементов. (только для чтения)
Объявление
Swift
var allObjects: [AnyObject] { get }
Objective C
@property(readonly, copy) NSArray *allObjects
Обсуждение
Порядок объектов в массиве не определен.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвраты один из объектов в наборе, или
nil
если набор не содержит объектов.Объявление
Swift
func anyObject() -> AnyObject?
Objective C
- (id)anyObject
Возвращаемое значение
Один из объектов в наборе, или
nil
если набор не содержит объектов. Объект возвратился, выбран в удобстве набора — выбор, как гарантируют, не будет случаен.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает булево значение, указывающее, присутствует ли данный объект в наборе.
Объявление
Swift
func containsObject(_
anObject
: AnyObject) -> BoolObjective C
- (BOOL)containsObject:(id)
anObject
Параметры
anObject
Объект, на который можно протестировать членство набора.
Возвращаемое значение
YES
true
еслиanObject
присутствует в наборе, иначеNO
false
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Оценивает данный предикат против каждого объекта в наборе получения и возвращает новый набор, содержащий объекты, для которых предикат возвращает true.
Объявление
Swift
func filteredSetUsingPredicate(_
predicate
: NSPredicate) -> NSSetObjective C
- (NSSet *)filteredSetUsingPredicate:(NSPredicate *)
predicate
Параметры
predicate
Предикат.
Возвращаемое значение
Новый набор тот, содержащий объекты в наборе получения, для который
predicate
возвращает true.Обсуждение
Следующий пример иллюстрирует использование этого метода.
NSSet *sourceSet =
[NSSet setWithObjects:@"One", @"Two", @"Three", @"Four", nil];
NSPredicate *predicate =
[NSPredicate predicateWithFormat:@"SELF beginswith 'T'"];
NSSet *filteredSet =
[sourceSet filteredSetUsingPredicate:predicate];
// filteredSet contains (Two, Three)
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.5 и позже.
-
Отправляет сообщение, указанное данным селектором к каждому объекту в наборе.
Объявление
Objective C
- (void)makeObjectsPerformSelector:(SEL)
aSelector
Параметры
aSelector
Селектор, указывающий сообщение для отправки элементам набора. Метод не должен брать параметры. Это не должно иметь побочного эффекта изменения набора. Это значение не должно быть
NULL
.Обсуждение
Сообщение, указанное
aSelector
отправляется один раз каждому элементу набора. Этот метод повышаетNSInvalidArgumentException
еслиaSelector
NULL
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Отправляет сообщение, указанное данным селектором к каждому объекту в наборе.
Объявление
Objective C
- (void)makeObjectsPerformSelector:(SEL)
aSelector
withObject:(id)argument
Параметры
aSelector
Селектор, указывающий сообщение для отправки элементам набора. Метод должен взять отдельный аргумент типа
id
. Метод не должен, как побочный эффект, изменять набор. Значение не должно бытьNULL
.argument
Объект передать как параметр методу, указанному
aSelector
.Обсуждение
Сообщение, указанное
aSelector
отправляется, сargument
как параметр, один раз каждому элементу набора. Этот метод повышаетNSInvalidArgumentException
еслиaSelector
NULL
.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Определяет, содержит ли набор объект, равный данному объекту и возвратам, возражающим, присутствует ли он.
Объявление
Swift
func member(_
object
: AnyObject) -> AnyObject?Objective C
- (id)member:(id)
object
Параметры
object
Объект, для которого можно протестировать на членство набора.
Возвращаемое значение
Если набор содержит объект, равный
object
(как определеноisEqual:
) тогда тот объект (обычно это будетobject
), иначеnil
.Обсуждение
Если Вы переопределяете
isEqual:
, необходимо также переопределитьhash
метод дляmember:
метод для работы над рядом объектов класса.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает объект перечислителя, позволяющий Вам доступ каждый объект в наборе.
Объявление
Swift
func objectEnumerator() -> NSEnumerator
Objective C
- (NSEnumerator *)objectEnumerator
Возвращаемое значение
Объект перечислителя, позволяющий Вам доступ каждый объект в наборе.
Обсуждение
Следующий фрагмент кода иллюстрирует, как можно использовать этот метод.
NSEnumerator *enumerator = [mySet objectEnumerator];
id value;
while ((value = [enumerator nextObject])) {
/* code that acts on the set’s values */
}
Когда этот метод используется с непостоянными подклассами
NSSet
, Ваш код не должен изменять набор во время перечисления. Если Вы намереваетесь изменить набор, используйтеallObjects
метод для создания «снимка» элементов набора. Перечислите снимок, но сделайте свои модификации к исходному набору.Специальные замечания
Более эффективно использовать быстрый протокол перечисления (см.
NSFastEnumeration
). Быстрое перечисление доступно на OS X v10.5 и позже и iOS 2.0 и позже.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
nextObject
(NSEnumerator
) -
Выполняет данный Блок с помощью каждого объекта в наборе.
Объявление
Swift
func enumerateObjectsUsingBlock(_
block
: (AnyObject!, UnsafeMutablePointer<ObjCBool>) -> Void)Objective C
- (void)enumerateObjectsUsingBlock:(void (^)(id obj, BOOL *stop))
block
Параметры
block
Блок для применения к элементам в наборе.
Блок берет два параметра:
obj
Элемент в наборе.
stop
Ссылка на булево значение. Блок может установить значение в
YES
true
остановить последующую обработку набора.stop
параметром является единственный параметр. Необходимо только когда-либо устанавливать эту булевскую переменную в YES в Блоке.Блок возвращает булево значение, указывающее ли
obj
прошедший тест.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Выполняет данный Блок с помощью каждого объекта в наборе, с помощью указанных опций перечисления.
Объявление
Swift
func enumerateObjectsWithOptions(_
opts
: NSEnumerationOptions, usingBlockblock
: (AnyObject!, UnsafeMutablePointer<ObjCBool>) -> Void)Objective C
- (void)enumerateObjectsWithOptions:(NSEnumerationOptions)
opts
usingBlock:(void (^)(id obj, BOOL *stop))block
Параметры
opts
Битовая маска, указывающая опции для перечисления.
block
Блок для применения к элементам в наборе.
Блок берет два параметра:
obj
Элемент в наборе.
stop
Ссылка на булево значение. Блок может установить значение в
YES
true
остановить последующую обработку набора.stop
параметром является единственный параметр. Необходимо только когда-либо устанавливать эту булевскую переменную в YES в Блоке.Блок возвращает булево значение, указывающее ли
obj
прошедший тест.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Ряд возвратов возражает, которые проходят тест в данном Блоке.
Объявление
Swift
func objectsPassingTest(_
predicate
: (AnyObject!, UnsafeMutablePointer<ObjCBool>) -> Bool) -> NSSetObjective C
- (NSSet *)objectsPassingTest:(BOOL (^)(id obj, BOOL *stop))
predicate
Параметры
predicate
Блок для применения к элементам в массиве.
Блок берет три параметра:
obj
Элемент в наборе.
stop
Ссылка на булево значение. Блок может установить значение в
YES
true
остановить последующую обработку набора.stop
параметром является единственный параметр. Необходимо только когда-либо устанавливать эту булевскую переменную в YES в Блоке.Блок возвращает булево значение, указывающее ли
obj
прошедший тест.Возвращаемое значение
NSSet, содержащий объекты, проходящие тест.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Ряд возвратов возражает, которые проходят тест в данном Блоке, с помощью указанных опций перечисления.
Объявление
Swift
func objectsWithOptions(_
opts
: NSEnumerationOptions, passingTestpredicate
: (AnyObject!, UnsafeMutablePointer<ObjCBool>) -> Bool) -> NSSetObjective C
- (NSSet *)objectsWithOptions:(NSEnumerationOptions)
opts
passingTest:(BOOL (^)(id obj, BOOL *stop))predicate
Параметры
opts
Битовая маска, указывающая опции для перечисления.
predicate
Блок для применения к элементам в наборе.
Блок берет два параметра:
obj
Элемент в наборе.
stop
Ссылка на булево значение. Блок может установить значение в
YES
true
остановить последующую обработку набора.stop
параметром является единственный параметр. Необходимо только когда-либо устанавливать эту булевскую переменную в YES в Блоке.Блок возвращает булево значение, указывающее ли
obj
прошедший тест.Возвращаемое значение
NSSet
содержа объекты, проходящие тест.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Возвращает булево значение, указывающее, присутствует ли каждый объект в наборе получения также в другом данном наборе.
Объявление
Swift
func isSubsetOfSet(_
otherSet
: NSSet) -> BoolObjective C
- (BOOL)isSubsetOfSet:(NSSet *)
otherSet
Параметры
otherSet
Набор, с которым можно сравнить набор получения.
Возвращаемое значение
YES
true
если каждый объект в наборе получения также присутствует вotherSet
, иначеNO
false
.Обсуждение
Объектное равенство тестируется с помощью
isEqual:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает булево значение, указывающее, присутствует ли по крайней мере один объект в наборе получения также в другом данном наборе.
Объявление
Swift
func intersectsSet(_
otherSet
: NSSet) -> BoolObjective C
- (BOOL)intersectsSet:(NSSet *)
otherSet
Параметры
otherSet
Набор, с которым можно сравнить набор получения.
Возвращаемое значение
YES
true
если по крайней мере один объект в наборе получения также присутствует вotherSet
, иначеNO
false
.Обсуждение
Объектное равенство тестируется с помощью
isEqual:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Сравнивает набор получения с другим набором.
Объявление
Swift
func isEqualToSet(_
otherSet
: NSSet) -> BoolObjective C
- (BOOL)isEqualToSet:(NSSet *)
otherSet
Параметры
otherSet
Набор, с которым можно сравнить набор получения.
Возвращаемое значение
YES
true
если содержаниеotherSet
равны содержанию набора получения, иначеNO
false
.Обсуждение
Два набора имеют равное содержание, если у каждого из них есть то же число членов и если каждый элемент одного набора присутствует в другом. Объектное равенство тестируется с помощью
isEqual:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
– intersectsSet:
isEqual:
(NSObject
протокол)– isSubsetOfSet:
-
Возвратите набор, содержащий результаты вызова
valueForKey:
на каждом из элементов набора получения.Объявление
Swift
func valueForKey(_
key
: String) -> AnyObjectObjective C
- (id)valueForKey:(NSString *)
key
Параметры
key
Имя одного из свойств элементов набора получения.
Возвращаемое значение
Набор, содержащий результаты вызова
valueForKey:
(с параметромkey
) на каждом из элементов набора получения.Обсуждение
Возвращенный набор не мог бы иметь того же числа членов как набор получения. Возвращенный набор не будет содержать элементов, соответствующих экземплярам
valueForKey:
возвратnil
(обратите внимание на то, что это в отличие отNSArray
реализация, которая может поместитьNSNull
значения в массивах это возвращается).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Вызывает
setValue:forKey:
на каждом из элементов набора.Объявление
Swift
func setValue(_
value
: AnyObject?, forKeykey
: String)Objective C
- (void)setValue:(id)
value
forKey:(NSString *)key
Параметры
value
Значение для свойства, идентифицированного
key
.key
Имя одного из свойств элементов набора.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Возвращает массив содержания набора, сортированного, как указано данным массивом дескрипторов вида.
Объявление
Swift
func sortedArrayUsingDescriptors(_
sortDescriptors
: [AnyObject]) -> [AnyObject]Параметры
sortDescriptors
Массив
NSSortDescriptor
объекты.Возвращаемое значение
NSArray, содержащий содержание набора, сортированное, как указано
sortDescriptors
.Обсуждение
Первый дескриптор указывает путь первичного ключа, который будет использоваться в сортировке содержания набора. Любые последующие дескрипторы используются для дальнейшего совершенствования сортировки объектов с двойными значениями. Посмотрите
NSSortDescriptor
для получения дополнительной информации.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Повышает исключение.
Объявление
Swift
func addObserver(_
observer
: NSObject, forKeyPathkeyPath
: String, optionsoptions
: NSKeyValueObservingOptions, contextcontext
: UnsafeMutablePointer<Void>)Objective C
- (void)addObserver:(NSObject *)
observer
forKeyPath:(NSString *)keyPath
options:(NSKeyValueObservingOptions)options
context:(void *)context
Параметры
observer
Объект зарегистрироваться для уведомлений KVO. Наблюдатель должен реализовать метод наблюдения значения ключа
observeValueForKeyPath:ofObject:change:context:
.keyPath
Ключевой путь, относительно набора, свойства для наблюдения. Это значение не должно быть
nil
.options
Комбинация
NSKeyValueObservingOptions
значения, который указывает то, что включено в уведомления наблюдения. Для возможных значений посмотритеNSKeyValueObservingOptions
.context
Произвольные данные, передающиеся
observer
вobserveValueForKeyPath:ofObject:change:context:
.Специальные замечания
NSSet
объекты не заметны, таким образом, этот метод повышает исключение, когда вызвано наNSSet
объект. Вместо того, чтобы наблюдать набор, наблюдайте неупорядоченный к - многие отношение, для которого набор является набором связанных объектов.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Повышает исключение.
Объявление
Параметры
observer
Объект удалить как наблюдатель.
keyPath
Ключевой путь тот, относительно набора, для который
observer
регистрируется для получения уведомлений изменения KVO. Это значение не должно бытьnil
.context
Произвольные данные, передающиеся
observer
вobserveValueForKeyPath:ofObject:change:context:
.Специальные замечания
NSSet
объекты не заметны, таким образом, этот метод повышает исключение, когда вызвано наNSSet
объект. Вместо того, чтобы наблюдать набор, наблюдайте неупорядоченный к - многие отношение, для которого набор является набором связанных объектов.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.7 и позже.
-
Повышает исключение.
Объявление
Параметры
observer
Объект удалить как наблюдатель.
keyPath
Ключевой путь тот, относительно набора, для который
observer
регистрируется для получения уведомлений изменения KVO. Это значение не должно бытьnil
.Специальные замечания
NSSet
объекты не заметны, таким образом, этот метод повышает исключение, когда вызвано наNSSet
объект. Вместо того, чтобы наблюдать набор, наблюдайте неупорядоченный к - многие отношение, для которого набор является набором связанных объектов.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Строка, представляющая содержание набора, отформатированного как список свойств. (только для чтения)
Объявление
Swift
var description: String { get }
Objective C
@property(readonly, copy) NSString *description
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает строку, представляющую содержание набора, отформатированного как список свойств.
Объявление
Swift
func descriptionWithLocale(_
locale
: AnyObject?) -> StringObjective C
- (NSString *)descriptionWithLocale:(id)
locale
Параметры
locale
На iOS и OS X v10.5 и позже, любой экземпляр
NSDictionary
илиNSLocale
объект может использоваться дляlocale
OS X.On v10.4 и ранее это должен быть экземплярNSDictionary
.Возвращаемое значение
Строка, представляющая содержание набора, отформатированного как список свойств.
Обсуждение
Этот метод отправляет каждый из элементов набора
descriptionWithLocale:
сlocale
переданный как единственный параметр. Если элементы набора не отвечают наdescriptionWithLocale:
, этот метод отправляетdescription
вместо этого.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также