+ set
+ setWithArray:
+ setWithObject:
+ setWithObjects:
+ setWithObjects:count:
+ setWithSet:
- setByAddingObject:
- setByAddingObjectsFromSet:
- setByAddingObjectsFromArray:
Availability 有効性
Technology
@interface NSSet<__covariant ObjectType> : NSObject
The NSSet
, NSMutable
, and NSCounted
classes declare the programmatic interface to an unordered collection of objects.
NSSet
、NSMutable
、そしてNSCounted
クラスは、オブジェクトの順番付けられないコレクションに対するプログラムインターフェイスを宣言します。
NSSet
declares the programmatic interface for static sets of distinct objects. You establish a static set’s entries when it’s created, and can’t modify the entries after that. NSMutable
, on the other hand, declares a programmatic interface for dynamic sets of distinct objects. A dynamic — or mutable — set allows the addition and deletion of entries at any time, automatically allocating memory as needed.
Use sets as an alternative to arrays when the order of elements isn’t important and you need to consider performance in testing whether the set contains an object. With an array, testing for membership is slower than with sets.
NSSet
is “toll-free bridged” with its Core Foundation counterpart, CFSet
. See Toll-Free Bridging for more information on toll-free bridging.
トールフリーブリッジに関する更なる情報としてToll-Free Bridgingを見てください。
In Swift, use this class instead of a Set
constant in cases where you require reference semantics.
There should be little need of subclassing. サブクラスを作る必要はほとんどないはずです。 If you need to customize behavior, it’s often better to consider composition instead of subclassing.
In a subclass, you must override all of its primitive methods: サブクラスにおいて、あなたはそれの根本的メソッドの全てをオーバーライドする必要があります:
Before making a custom class of NSSet
, investigate NSHash
and the corresponding Core Foundation type, CFSet. Because NSSet
and CFSet are “toll-free bridged,” you can substitute a CFSet object for a NSSet
object in your code (with appropriate casting). Although they’re corresponding types, CFSet and NSSet
don’t have identical interfaces or implementations, and you can sometimes do things with CFSet that you can’t easily do with NSSet
.
If the behavior you want to add supplements that of the existing class, you could write a category on NSSet
. Keep in mind, however, that this category affects all instances of NSSet
that you use, and this might have unintended consequences. Alternatively, you could use composition to achieve the desired behavior.
あるいは、あなたは望む挙動を達成するためにコンポジション(合成)を使うことができます。
+ set
+ setWithArray:
+ setWithObject:
+ setWithObjects:
+ setWithObjects:count:
+ setWithSet:
- setByAddingObject:
- setByAddingObjectsFromSet:
- setByAddingObjectsFromArray:
- initWithArray:
- initWithObjects:
- initWithObjects:count:
- initWithSet:
- initWithSet:copyItems:
- init
count
allObjects
- anyObject
nil
if the set contains no objects.
集合の中のオブジェクトの1つを返します、または集合がオブジェクトを含まないならばnil
。
- containsObject:
- filteredSetUsingPredicate:
- makeObjectsPerformSelector:
- makeObjectsPerformSelector:withObject:
- member:
- objectEnumerator
- enumerateObjectsUsingBlock:
- enumerateObjectsWithOptions:usingBlock:
- objectsPassingTest:
- objectsWithOptions:passingTest:
- isSubsetOfSet:
- intersectsSet:
- isEqualToSet:
- valueForKey:
valueForKey:
on each of the receiving set's members.
ある集合を返します、valueForKey:
を受け手側の集合のもつメンバのそれぞれで発動する結果を含んでいます。
- setValue:forKey:
setValue:forKey:
on each of the set’s members.
setValue:forKey:
を集合のもつメンバのそれぞれで発動します。
- sortedArrayUsingDescriptors:
- addObserver:forKeyPath:options:context:
- removeObserver:forKeyPath:context:
- removeObserver:forKeyPath:
description
- descriptionWithLocale:
NSArray
NSMutableArray
NSDictionary
NSMutableDictionary
NSMutableSet