shohaku.core.collections
インタフェース PlainMap

すべてのスーパーインタフェース:
PlainContain

public interface PlainMap
extends PlainContain

単なる写像の集合を表現するインターフェースを定義します。
これは重複可能なキーと値を対とするデータ構造を持つオブジェクトの入れ物です。

このインターフェースを実装する契約事項は、そのデータ構造に対するのみとなります。
このインターフェースは、データを編集する機能は提供しません。
ただし実装が編集する機能を提供する事には、どの様な制約も持ちません。

このインターフェースは Java Collections Framework とは関係有りません。

複数の実装に対して共通するアクセスを実現するための、最小の機能を定義します。
キーと値がマッピングされたデータの0個以上の集まりで有ることのみが実装の条件と為るように設計されています。
java.util.Map と違い、キーの重複を許可します。
重複キーを持つ実装から値を取得する場合にどのキーにマッピングされた値が返されるかは実装によります。
またキーに値を対応づける規則となる関数は、同一キーによるN回以上の呼出に対して常に同一の結果を返す事のみを契約条件とします。
この緩やかな制約によりキーと値を対とするデータ構造を持つ複数の実装に対して、統一されたインターフェースからのアクセスを実現します。

写像の集合を構築する場合には、大半の文脈では java.util.Map を使用する事が最適と言えます。
また同一キーに複数のデータをマッピングする場合は shohaku.core.collections.Group の使用が推奨されます。
キーの重複が重要な問題を発生させる場合は java.util.Map を使用してください。

このインターフェースの緩やかな制約から実装が多種多様にあり得る事に注意が必要です。
検索速度の差異やキーと値を対応づける関数等の各実装の特性と用途に応じて、実装を選択する必要があります。


入れ子クラスの概要
static interface PlainMap.Entry
          プレーンマップのエントリ (キーと値のペア) です。
 
メソッドの概要
 boolean containsKey(java.lang.Object key)
          指定されたキーがデータに含まれている場合に true を返します.
 java.lang.Object get(java.lang.Object key)
          指定されたキーが示す値を返却する、指定されたキーが存在しない場合Nullを返却します。
 java.lang.Object get(java.lang.Object key, java.lang.Object defaultValue)
          指定されたキーが示す値を返却する、値がNullの場合 defaultValue を返却します。
 java.util.Iterator getAll(java.lang.Object key)
          指定されたキーが示す全ての値の変更不可能な反復子を返却します。
 java.util.Iterator iterator()
          全てのエントリ(PlainMap.Entry)の変更不可能な反復子を返却します。
 
インタフェース shohaku.core.collections.PlainContain から継承したメソッド
size
 

メソッドの詳細

iterator

public java.util.Iterator iterator()
全てのエントリ(PlainMap.Entry)の変更不可能な反復子を返却します。

定義:
インタフェース PlainContain 内の iterator
戻り値:
全てのエントリの変更不可能な反復子

get

public java.lang.Object get(java.lang.Object key)
指定されたキーが示す値を返却する、指定されたキーが存在しない場合Nullを返却します。
重複するキーが存在する場合の検索規則は実装に依存するが、N回以上の呼出に対して常に同一の結果を返す必要がある。

パラメータ:
key - キー
戻り値:
キーが示す値

get

public java.lang.Object get(java.lang.Object key,
                            java.lang.Object defaultValue)
指定されたキーが示す値を返却する、値がNullの場合 defaultValue を返却します。
重複するキーが存在する場合の検索規則は実装に依存するが、同一キーによるN回以上の呼出に対して常に同一の結果を返す必要がある。

パラメータ:
key - キー
defaultValue - デフォルト値
戻り値:
キーが示す値又は defaultValue

getAll

public java.util.Iterator getAll(java.lang.Object key)
指定されたキーが示す全ての値の変更不可能な反復子を返却します。
指定されたキーが存在しない場合は空の反復子を返却します。

パラメータ:
key - キー
戻り値:
キーが示す全ての値の変更不可能な反復子

containsKey

public boolean containsKey(java.lang.Object key)
指定されたキーがデータに含まれている場合に true を返します.

パラメータ:
key - キー
戻り値:
指定されたキーが含まれている場合 true