public class FixedSizeMap extends AbstractMap
このクラスのマップは、決められたサイズの領域持ちます。 キーはコンストラクタで指定された マップのサイズに等しい個数しか、このマップに関連付けることはできません。 すでにマップのサイズに等しい個数のキーが関連付けられている状態で、
別の新しいキーを関連付けようとした場合、LRU アルゴリズムに従い 最も古くに使われたキーが削除され、全体のキー数がマップのサイズに 等しくなるように調整されます。
このオブジェクトは、Thread safe となっています。
このマップは LRU アルゴリズムにより動作するため、 マッピングの追加や更新をしたり、キーにマッピングされている値の取得を した時に、キーのアクセス順をチェックします。 したがって、マップのサイズが大きさに比例して put() や get()
メソッドの レスポンス時間が長くなります。 このハッシュテーブルは、適度な大きさで利用することを推奨します。
Hashtable
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
コンストラクタと説明 |
---|
FixedSizeMap(int size)
指定されたサイズの領域を持つマップを構築します。
|
修飾子とタイプ | メソッドと説明 |
---|---|
int |
capacity()
このマップに対してマップできるキーの最大個数を返します。
|
void |
clear()
マップからマッピングをすべて削除します。
|
boolean |
containsKey(Object key)
指定されたキーへのマッピングをこのマップが格納する場合に true を返します。
|
Set |
entrySet()
このマップに格納されているマッピングのセットビューを返します。
|
Object |
get(Object key)
マップが、指定されたキーにマッピングしている値を返します。
|
Object |
put(Object key,
Object value)
指定された値を、マップ内の指定されたキーに関連付けます 。
|
Object |
remove(Object key)
このキーにマッピングがある場合に、そのマッピングをマップから削除します。
|
clone, containsValue, equals, hashCode, isEmpty, keySet, putAll, size, toString, values
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
public FixedSizeMap(int size) throws IllegalArgumentException
size
- ハッシュテーブルの容量IllegalArgumentException
- 容量が 1 より小さい場合public int capacity()
public void clear()
clear
インタフェース内 Map
clear
クラス内 AbstractMap
public boolean containsKey(Object key)
containsKey
インタフェース内 Map
containsKey
クラス内 AbstractMap
key
- このマップにあるかどうかを判定するキーpublic Set entrySet()
entrySet
インタフェース内 Map
entrySet
クラス内 AbstractMap
public Object get(Object key)
get
インタフェース内 Map
get
クラス内 AbstractMap
key
- 関連付けられている値が返されるキーcontainsKey(Object)
public Object put(Object key, Object value)
put
インタフェース内 Map
put
クラス内 AbstractMap
key
- 指定された値が関連付けられるキーvalue
- 指定されたキーに関連付けられる値NullPointerException
- キーまたは値が null の場合Copyright © 2012 NTT DATA INTRAMART CORPORATION