JavaのHashMapの使い方(値のput、getとループ)

Javaのコレクションフレームワークのひとつ、Mapについて、まとめておきます。
結構頻繁に利用するので、、、。

一番良く利用すると思われるHashMapを例にします。
HashMapはキーと値のペアを保持しておくことができるクラスです。

下記例を実行すると分かるように、同じキー名で値をputすると、後からputした値で上書きされます。
また、以前はキーと値をループで回しながら扱うのがすこしめんどくさかったのですが、拡張for文を使うことで、すごくすっきりとした記述で扱うことができるようになりました。

記述例

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class TestBatch {

	public static void main(String args[]){
	    HashMap<String,String> map = new HashMap<String,String>();

	    map.put("キー1", "キー1の値");
	    map.put("キー2", "キー2の値");
	    map.put("キー2", "キー3の値");

	    if (map.containsKey("キー1")){
	      System.out.println("キー1=" + map.get("キー1"));
	    }else{
	      System.out.println("指定したキーは存在しません");
	    }

	    //拡張for文(for-each)でループ
	    for(Map.Entry<String, String> e : map.entrySet()) {
	        System.out.println(e.getKey() + " : " + e.getValue());
	    }


	    //Iteratorでループ
	    for (Iterator<Map.Entry<String, String>> it = map.entrySet().iterator(); it.hasNext(); ) {
	        // entryを取得
	        Map.Entry<String, String> entry = it.next();
	        // キーを取得
	        String key = entry.getKey();
	        // 値を取得
	        String val = entry.getValue();

	        System.out.println(key + " : " + val);
	    }

	  }

}

 

拡張for文、とても楽チンですね。



こんな記事も関係あるかも。読んでみてね。

コメントを残す

サブコンテンツ

このページの先頭へ