Unofficial
"CLDC 1.1
+ MIDP 2.0"
API Reference.
(日本語版)

java.util
クラス Hashtable

java.lang.Object
  上位を拡張 java.util.Hashtable

public class Hashtable
extends Object

キーに対して値をマップして管理するクラスです。 キーおよび値は双方ともオブジェクトとして扱うことができるものに限って使用することができます。 このため、プリミティブ型を取り扱う場合は Integer クラスや Long クラスといったラップクラスを使用します。

キーとして指定するオブジェクトは equals メソッドと hashCode メソッドが適切に実装されていなければなりません。 ハッシュテーブルはこの2つのメソッドを使用してキーを管理します。

Java Platform, Standard Edition.におけるこのクラスは負荷係数と初期容量の設定を行うことができましたが、Java Platform, Micro Edition.では初期容量の設定のみが行えます。 負荷係数はデフォルトのものから変更することはできません。

あらかじめ Hashtable で取り扱う情報量が多いことがわかっている場合は初期容量を十分に大きな初期容量を指定してインスタンスを生成した方が効率的に管理を行うことができます。

例:
プリミティブ型の int に対応する値を文字列で設定する場合は、

     Hashtable hash = new Hashtable();
     hash.put(new Integer(1), " その1 ");
     hash.put(new Integer(2), " その2 ");
     hash.put(new Integer(3), " その3 ");

というように記述します。ここで設定した値を取得して表示する場合は、

     System.out.println((String) hash.get(new Integer(1)));
     System.out.println((String) hash.get(new Integer(2)));
     System.out.println((String) hash.get(new Integer(3)));

というように記述します。

このクラスはスレッド・セーフに実装されています。

導入されたバージョン:
CLDC 1.0
関連項目:
Object.equals(Object), Object.hashCode()

コンストラクタの概要
Hashtable()
          デフォルトの容量および負荷係数を持つ、空の新しいオブジェクトを構築します。
Hashtable(int size)
          指定された初期容量を持つ、空の新しいオブジェクトを構築します。
 
メソッドの概要
 void clear()
          ハッシュテーブルに記録されている要素を全て削除して、空の状態にします。
 boolean contains(Object value)
          渡されたオブジェクトがハッシュテーブルに保持している値に存在するかどうか判定し、その結果を返します。
 boolean containsKey(Object key)
          渡されたオブジェクトがハッシュテーブルに保持しているキーに存在するか否かを判定し、その結果を返します。
 Enumeration elements()
          ハッシュテーブルが保持している値の列挙を返します。
 Object get(Object key)
          指定されたオブジェクトが一致するキーを持つ値を返します。
 boolean isEmpty()
          ハッシュテーブルに要素が存在するか否かを返します。
 Enumeration keys()
          ハッシュテーブルが保持しているキーの列挙を返します。
 Object put(Object key, Object value)
          キーとして渡されたオブジェクトと値として渡されたオブジェクトをハッシュテーブルに挿入します。
protected  void rehash()
          保持しているキーと値のマップのハッシュをより大きな容量のハッシュテーブルに格納します。
 Object remove(Object key)
          渡されたオブジェクトに対応するキーを持つキーと値をハッシュテーブルから削除します。
 int size()
          ハッシュテーブルが保持している要素数を返します。
 String toString()
          ハッシュテーブルを「比較的長い」文字列表現として返します。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

Hashtable

public Hashtable(int size)
指定された初期容量を持つ、空の新しいオブジェクトを構築します。

パラメータ:
size - 構築する初期容量を渡します。

Hashtable

public Hashtable()
デフォルトの容量および負荷係数を持つ、空の新しいオブジェクトを構築します。

メソッドの詳細

size

public int size()
ハッシュテーブルが保持している要素数を返します。

戻り値:
保持しているのキーの数を返します。

isEmpty

public boolean isEmpty()
ハッシュテーブルに要素が存在するか否かを返します。

戻り値:
存在しない場合は true を、存在する場合は false を返します。

keys

public Enumeration keys()
ハッシュテーブルが保持しているキーの列挙を返します。

戻り値:
キーが列挙された Enumeration インタフェースの実装オブジェクトを返します。

elements

public Enumeration elements()
ハッシュテーブルが保持している値の列挙を返します。

戻り値:
値が列挙された Enumeration インタフェースの実装オブジェクトを返します。

contains

public boolean contains(Object value)
渡されたオブジェクトがハッシュテーブルに保持している値に存在するかどうか判定し、その結果を返します。 値はハッシュ構造化されていないため、キーを対象に同様の処理を行う containsKey メソッドよりも負荷がかかります。

パラメータ:
value - 判定する対象のオブジェクトを渡します。
戻り値:
存在する場合は true を、存在しない場合は false を返します。
例外:
NullPointerException - valuenull の場合に throw します。

containsKey

public boolean containsKey(Object key)
渡されたオブジェクトがハッシュテーブルに保持しているキーに存在するか否かを判定し、その結果を返します。

パラメータ:
key - 判定する対象のオブジェクトを渡します。
戻り値:
存在する場合は true を、存在しない場合は false を返します。
例外:
NullPointerException - keynull の場合に throw します。

get

public Object get(Object key)
指定されたオブジェクトが一致するキーを持つ値を返します。

パラメータ:
key - 取り出す対象のオブジェクトを渡します。
戻り値:
キーに対応するオブジェクトがあればそのオブジェクトを、そうでなければ null を返します。
関連項目:
put(java.lang.Object, java.lang.Object)

rehash

protected void rehash()
保持しているキーと値のマップのハッシュをより大きな容量のハッシュテーブルに格納します。 ハッシュテーブルに格納されている要素数が負荷係数および現在の容量から導かれる容量を越えた場合に、自動的にこのメソッドが呼び出されます。


put

public Object put(Object key,
                  Object value)

キーとして渡されたオブジェクトと値として渡されたオブジェクトをハッシュテーブルに挿入します。 キーおよび値には null を使用することはできません。 また、オブジェクト key は適切に hashCode() メソッドを実装している必要があります。

指定したオブジェクト key と等しいとみなすことができるオブジェクトを get(Object) メソッドのパラメータで渡すことで挿入した値オブジェクトを取り出すことができます。

パラメータ:
key - ハッシュテーブル中のキーとするオブジェクトを渡します。
value - ハッシュテーブル中の値とするオブジェクトを渡します。
戻り値:
ハッシュテーブル中に渡された key に対応するキーのオブジェクトが存在した場合、その対応する値オブジェクトを返します。存在しない場合は null を返します。
例外:
NullPointerException - key あるいは valuenull の場合に throw します。
関連項目:
get(java.lang.Object), Object.equals(java.lang.Object), Object.hashCode()

remove

public Object remove(Object key)

渡されたオブジェクトに対応するキーを持つキーと値をハッシュテーブルから削除します。 ハッシュテーブルにキーに対応する要素がない場合は何も行いません。

パラメータ:
key - 削除する対象のキーと一致するオブジェクトを渡します。
戻り値:
削除対象が存在した場合は削除前の値に対応するオブジェクトを返します。存在しない場合は null を返します。

clear

public void clear()

ハッシュテーブルに記録されている要素を全て削除して、空の状態にします。


toString

public String toString()
ハッシュテーブルを「比較的長い」文字列表現として返します。

オーバーライド:
クラス Object 内の toString
戻り値:
ハッシュテーブルの文字列表現を返します。

Unofficial
"CLDC 1.1
+ MIDP 2.0"
API Reference.
(日本語版)

公式仕様書原文の著作権表記等(※):

Mobile Information Device Profile Specification ("Specification")
Version: 2.0
Status: FCS
Release: November 5, 2002

Copyright 2002 Sun Microsystems, Inc. and Motorola, Inc.
All rights reserved.
※ただしこの API リファレンスは英語仕様を一語一句正確に翻訳したものではなく、一度私が英語の仕様原文を読んだ上で元の意味と構造をなるべく保つように書き起こしたものです。このため一部は完全に異なる説明となっています。また CLDC 1.1 部分は同仕様の範囲外であるため、まったく参考とはしていません。

※仕様書のライセンス上、問題は無いと考えておりますが、万が一問題があるとお考えの関係者の方がいらっしゃいましたらメールにて連絡をいただけると幸いに存じます(第一言語に日本語、第二言語に英語を希望しますが、返信は基本的に日本語で行います)。

この API リファレンスは仕様書の日本語版という位置づけでは作成していませんし、仕様書ほど厳格でもありません。MUST、SHOULD、MAY などの仕様の条件を強調する文を維持していません(反映すらしていない個所もあります)。仮想マシンおよび MIDP の実装のために使用することは避けてください。そのような用途には必ず公式仕様書原文そのものを用いるべきです。
この API リファレンスに記載されている内容は"さかきけい"が Sun Microsystems, Inc や Motorola, Inc、Java Community Process が公開している各種公式資料を元に、独自に調査・編集したものであり、Sun Microsystems, Inc や Motorola, Inc、Java Community Process 等とは一切関係ありません。したがってこの API リファレンスに関する問い合わせを関係各社等に対して行うことを固く禁じます。
また、記載された内容には既知か否かに関らず誤りが含まれる可能性があり、一切保証はありません。本 API リファレンスを使用した結果、不利益が生じたとしても"さかきけい"は一切の責任を負いません。
許可無く公開/非公開および Internet/Intranet/LAN を問わず他サイトに転載すること、複写および複製すること、ローカル・ファイル等に保存することを禁じます。


Copyright© 2001-2002,2005-2009,2011 by KEI SAKAKI.
ALL RIGHTS RESERVED.
無断転載を禁じます。

Unofficial "CLDC 1.0 + MIDP 1.0" API Reference はこちらです。