※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


トップ > リファレンス > データ管理:データ型とコレクション > NSIndexSet クラスリファレンス

NSIndexSet クラスリファレンス 翻訳元


このページの最終更新: 2010-02-06
ADCの最終更新:2009-08-28


継承するクラス NSObject
準拠しているプロトコル NSCoding
NSCopying
NSMutableCopying
NSObject (NSObject)
フレームワーク /System/Library/Frameworks/Foundation.framework
使用可能な環境 Mac OS X v10.3以降
コンパニオンガイド Collections Programming Topics for Cocoa
宣言ファイル NSIndexSet.h
サンプルコード AnimatedTableView
DemoMonkey
ImageKitDemo
iSpend
Sketch+Accessibility

概観(Overview)


 NSIndexSetクラスは、その用法から インデックス として知られる符号なし整数の変更不能なコレクションを象徴しています。このコレクションは インデックスセット と呼ばれます。
 コード中ではインデックスセットはデータ構造の中にインデックスをストアするのに使います。例えば、NSArrayオブジェクトがあったとして、インデックスセットをその配列のサブセットを識別するのに使うことができます。
 インデックスセットにはそれぞれのインデックスは一つずつしか収容できません。これは理解すべき重要な概念であり、インデックスセットを整数値をストアするコレクションとして気ままに使用できない理由でもあります。これがどういう動作か説明します。NSIndexSetオブジェクトを4、5、2、5の値を渡して生成した場合、そのインデックスセットには4、5、2のインデックスしか収容されません。インデックスは常にソートされた順が維持されるので、実際に生成したインデックスセットの並び順は2、4、5になります。
 ほとんどの場合、整数値をそれぞれストアするよりもインデックスセットを使う方が効果的です。内部的には、NSIndexSetクラスはインデックスをレンジを使って表現しています。パフォーマンスと効率を最大限に引き出す為に、オーバーラップされたレンジはインデックスセット内で自動的に統合されます。つまり、レンジはオーバーラップされているというよりはマージされている、ということです。以上から、インデックスセットのインデックスがより連続的であるほど、インデックスを表すのに要求されるレンジがより少なくなる、ということになります。
 NSIndexSetクラスの指定イニシャライザはinitWithIndexesInRange:とinitWithIndexSet:です。
 NSIndexSetクラスのサブクラスを作ってはいけません。
 NSIndexSetクラスの変更可能なサブクラスはNSMutableIndexSet?です。

採用しているプロトコル(Adopted Protocols)


NSCoding
    – encodeWithCoder:
    – initWithCoder:
NSCopying
    – copyWithZone:
NSMutableCopying
    – mutableCopyWithZone:

このクラスでできること(Tasks)


インデックスセットの生成(Creating Index Sets)

    + indexSet
    + indexSetWithIndex:
    + indexSetWithIndexesInRange:
    – init
    – initWithIndex:
    – initWithIndexesInRange:
    – initWithIndexSet:

インデックスセットの情報の確認(Querying Index Sets)

    – containsIndex:
    – containsIndexes:
    – containsIndexesInRange:
    – intersectsIndexesInRange:
    – count
    – countOfIndexesInRange:
    – indexPassingTest:
    – indexesPassingTest:
    – indexWithOptions:passingTest:
    – indexesWithOptions:passingTest:
    – indexInRange:options:passingTest:
    – indexesInRange:options:passingTest:

インデックスセットの比較(Comparing Index Sets)

    – isEqualToIndexSet:

インデックスの取得(Getting Indexes)

    – firstIndex
    – lastIndex
    – indexLessThanIndex:
    – indexLessThanOrEqualToIndex:
    – indexGreaterThanOrEqualToIndex:
    – indexGreaterThanIndex:
    – getIndexes:maxCount:inIndexRange:

インデックスの列挙(Enumerating Indexes)

    – enumerateIndexesUsingBlock:
    – enumerateIndexesWithOptions:usingBlock:
    – enumerateIndexesInRange:options:usingBlock:

クラスメソッド



インスタンスメソッド



定数(Constants)





|新しいページ|検索|ページ一覧|RSS|@ウィキご利用ガイド | 管理者にお問合せ
|ログイン|