skillup

技術ブログ

Java

Mapの使い方

投稿日:2015年4月29日 更新日:

Javaに限らずプログラミングで最も大切になるのは配列の処理でしょう。

Javaですと、PHPのような連想配列の代わりにMapを使用します。

Mapとは?

ようはkey=>valueの組み合わせですね。PHPだと連想配列として普通に定義できるのですが、多くのプログラミング言語では配列と連想配列をしっかりと区別しており、連想配列というものは存在しません。代わりのオブジェクトを定義します。

Javaの場合ほとんどHashMapを使いますが、入力された値が順番通りに出てくるという利点があることからTreeMapを使うこともあります。この講座では基本的にHashMapを前提にして説明します。

Mapのインスタンス生成

などです。

値の保存

値を保存するにはputを使います。

値の取り出し

キーをもとにしてgetで値を取り出すことができます。

展開

配列の操作をするうえで必ずでてくる格納しているデータをすべて取り出す方法です。

マップはkey->valueの組み合わせをEntryというオブジェクトで定義していることから下記のようなループを使うと便利です。

Listとの組み合わせ

実際の処理で多いのはMapをListに入れた時の処理でしょう。

id  | name          | mail
01 | matsumoto  | aaa@gmail.com
02 | tanaka         | bbb@gmail.com

上記のような形式のデータのループは下記のようにして行います。

配列ループ系は一番出てくる処理なので反射的にかけるレベルにしておきたいですね。

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

サーブレットのスコープ

JavaEEではスコープアノテーションによって変数のスコープを使い分けられたのですが、サーブレットの場合はプログラムの中で使い分けます。 通常はページ、リクエストとセッション、アプリケーションぐらいで …

no image

リファクタリング

業務で大幅なリファクタリングをする機会があり、その際の注意だったり、気をつけるべきことなどをまとめておきます。 自分用なので自分にしかわからない言葉で書いてある可能性が大きいです。 気になる方は問い合 …

no image

スコープアノテーションとCDIについて

JavaEEで個人的に鬼門がCDIとスコープだと思っています。 ここが少しずつ分かりかけてきたんでメモします。 まずJavaEEでは変数の生存期間をアノテーションで定義します。 これがなかなか分かりに …

no image

クラスパスの通し方

今回はNetbeansでなく、IDEを使わずにJavaを使う場合の記事です。 Javaで開発している人の99%はIDEで開発をしていると思うのですが、サーバー上で一時的テストをしないといけないような場 …

no image

Javaでの文字コード判定、変換

Javaにて文字コード判定の処理を書きます。 Contents1 通常の文字コードの判定、変換2 ファイルの文字コード判定、変換2.1 juniversalchardet2.1.1 ダウンロード2.1 …