Collection

名前

Collection — 総称コレクションインターフェイス

説明

Index型は他の多くのオブジェクト指向ライブラリで定義されているiterator型に相当します。より短いのが名前Indexで、あらゆるコレクションに対するこれらの基本サポートオブジェクトの、より抽象的でマルチ機能的な役割を重要視しています。インデックスやインテレータのデザインに関する詳細な背景については、collectionsライブラリのインターフェイス設計に関する注意を参照してください。

しかし、そのような順位づけが定義されていなければ、すべてのコレクションの特定のシーケンスは、作成された各インデックスに基づくことになります。どの特定のインデックスについても、すべてのコレクションメンバはその列挙シーケンスのどこかにかならず含まれますが、同じコレクション上の2つのインデックスが、同じシーケンスを持つとは限りません。

多くのcollection型は、それらのメンバ上に明示的な順位づけを定義します。そのようなコレクションに対して、インデックスによって参照されるメンバのシーケンスは常にこの順序で一定です。また、明示的、全体的に順序づけると、同じコレクションのすべてのインデックスが、かならず同じメンバシーケンスを持つようになります。

いったんインデックスが作成されると、その列挙シーケンスの中のメンバのシーケンスは、新しいメンバがコレクションに追加されたり既存メンバが削除されない限り、同じ状態でいることが保証されます。メンバが特定の位置に一度ロケートされると、インデックス自体がそのままであればその位置にとどまります。

コレクションへのインデックスオブジェクトは、いつでも作成できます。インデックスはコレクションのすべてのメンバをトラバースする基本的な手段です。同じコレクション上に、同じあるいは異なった位置を参照する複数のインデックスを、同時に存在させることもできます。collection型によっては、インデックスを通じてコレクションを修正することが可能です。

インデックスは、コレクション上の列挙シーケンスの現在位置を参照する特別なオブジェクト型です。列挙シーケンスは、コレクションの各メンバを厳密に1つずつ含みます。すべてのコレクションは、そのインデックスに対応する型のオブジェクトを定義します。コレクションのインデックス型は、コレクション上で直接利用できるあらゆるメッセージがそのコレクションのメンバを処理できるように、特別な方法を定義します。インデックスのオペレーションが、コレクションの個々のメンバを扱う最も基本的で柔軟な手段を提供することも、しばしばあります。

すべてのコレクションは、Indexと呼ばれる別個のオブジェクトを使ったメンバのトラバースをサポートします。また、すべてのコレクションは、メンバとして加えられるデータ値の型について共通の規則に従います。次の2つのサブセクションで、すべてのコレクションのこれらの基本機能をまとめます。

コレクションとは、オブジェクトリファレンス、あるいはそのコレクションのメンバとして明示的に割り当てられる他のデータ値のグループのことです。また、そのサブタイプによっては、メンバの順序づけや識別用のキー値とメンバの対応など、様々な互いの関連性の中でコレクションメンバが管理されます。Collectionの主なサブタイプには、Array型、List型、Set型、Map型があります。Collectionのスーパータイプは、すべてのcollections型にサポートされる共通の規則(と、関連メッセージ)を確立します。

Collectionに採用されているプロトコル

Create SetInitialValue Copy Drop Offsets ForEach

メソッド

フェーズ: Creating

フェーズ: Using