支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡

  • TOP
  •   
  • コラム
  •   
  • Javaのmap関数についてうろ覚え

はじめに

情報処理技術者の試験に向けて学習を進めてきた中で、Javaのmapについての使い方や特徴がうろ覚えでしたのでこれを機にまとめてみました。本記事では主にmap関数にスポットを当ててご紹介していきます。

mapとは?

mapとはキーと値をペアにして扱うデータ構造です。map自体はインターフェースであるため単独で利用することはなく、HashMapクラスやLinkedHashMapクラスのように実装可能なクラスを用います。例としてHashMapクラスを利用したmapの初期化については以下のように記述します。

Map<キーの型名,値の型名> オブジェクト名 = new HashMap<キーの型名,値の型名>();

※Java7以降では右辺のHashMap部分をHashMap<>();のように省略することが可能です。このようにオブジェクトを生成してから様々な用途に利用することになります。 ちなみに基本情報技術者試験の午後のプログラム言語の問題にも頻繁に登場しています。

主なmap関数

今回はmapを利用する上で、特に知っておかなければならないと感じた代表的なmap関数についてご紹介していきます。他にもmap関数は数多く存在し、中には古いJavaのバージョンによっては使用できないものもありますので、必要な際に都度Javaの公式リファレンスを確認すると良いでしょう。

※以下の頭文字「K」と「V」についてはmap内のキー型と値型を表す。

put

「put」は指定されたキーと値を関連付けるために利用するmap関数です。注意点として、既に登録済みのキーが存在する場合は古い値が新たに登録しようとする値に上書きされてしまいます。

V put(K key, V value)
●パラメータ key:指定された値が関連付けられているキー value:指定されたキーに関連付けられている値 ●戻り値 keyに以前関連付けられていた値

get

「get」は指定されたキーがmapに関連付けられている場合はその値を取り出すのに利用するmap関数です。もし、指定したキーが存在しない場合はnullを返します。

V get(Object key)
●パラメータ key:関連付けられた値が返されるキー ●戻り値 指定されたキーが関連付けられている値

remove

「remove」は指定されたキーがmapに関連付けられている場合はそのキーの関連付けを削除するのに利用するmap関数です。もし、指定したキーがmapに関連付けられていない場合はnullを返します。

V remove(Object key)
●パラメータ key:mapに関連付けられている状態を削除するキー ●戻り値 keyに以前関連付けられていた値

clear

「clear」はmapに関連付けられているキーをすべて削除するのに利用するmap関数です。

void clear()

isEmpty

「isEmpty」はキーがmapに関連付けられているかを確認するのに利用するmap関数です。もし、mapに関連付けられているキーや値が一つも存在しない場合はtrueを返します。逆に一つでもキーや値が存在する場合はfalseを返します。

boolean isEmpty()
●戻り値 mapに関連付けられているキーや値が存在しない場合はtrue

containsKey

「containsKey」は指定されたキーがmapに関連付けられているかを確認するのに利用します。もし、指定されたキーが存在する場合はtrueを返し、存在しない場合はfalseを返します。

boolean containsKey(Object key)
●パラメータ key:mapに関連付けられているかどうかを判別するキー ●戻り値 指定されたキーがmapに存在する場合はtrue

containsValue

「containsValue」はmapに単一もしくは複数のキーと指定された値が関連付けられているかを確認します。もし、単一もしくは複数のキーと指定された値が関連付けられている場合はtrueを返します。関連付けられていない場合はfalseを返します。

boolean containsValue(Object value)
●パラメータ value:mapに関連付けられているかどうかを判別する値 ●戻り値 単一もしくは複数のキーと指定された値が関連付けられている場合はtrue

size

「size」はmapに関連付けられているキーと値のペア数を取得するのに利用するmap関数です。

int size()
●戻り値 mapに関連付けられているキーと値のペア数

まとめ

今回はJavaのmapについての使い方や代表的なmap関数についてご紹介してきましたが、いかがだったでしょうか?
情報処理技術者試験以外でもプログラミングを学習する上でmapを利用する際の備忘録としてまとめることができ、私自身も大変勉強になりました。学習してきた内容を単にインプットするだけでなくアウトプットすることでより自分自身の知識の定着にも役立てることができました。map以外のデータ構造についてもこれを機にまとめ、さらに理解を深めていきたいものです。最後になりますが、本記事を読んでいただきました皆様にも、map関数を利用する際に少しでも参考になれば幸いです。