7
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Java】Mapの使い方

Last updated at Posted at 2021-01-05

#プログラミング勉強日記
2021年1月5日
JavaでのMapの扱い方を簡単にまとめる。

#Mapとは
 Mapはキーと値の2つの要素からなる複数のデータを格納できるものである。キーは値に名前を付けるようなもので、値の1つ1つにキーが存在する。このキーと値がペアになっているのがMapの特徴である。そのため、Mapから値を探すときにキーを目印に探すことができる。

#HashMapで初期化する方法
 Mapはインターフェースなので、インスタンスを生成するにはそれを実装したクラスを使用しないといけない。Mapのインスタンスを生成するのによく使われているのが、HashMapクラスである。

HashMapクラスを使って宣言する方法
Map<キーの型名, 値の型名> オブジェクト名 = new HashMap<>();

 宣言するときにはキーと値のデータ型を指定する必要がある。

サンプルコード
import java.util.HashMap;
import java.util.Map;

public class Sample {
    public static void main(String[] args) throws Exception {
        // キーをInteger、値をStringにする場合
        Map<Integer, String> map = new HashMap<>();
    }
}

#Mapでよく使用するメソッド

##putメソッド
 Mapにデータを追加できるメソッドで、第1引数にキー、第2引数に値を指定する。

サンプルコード
import java.util.HashMap;
import java.util.Map;

public class Sample {
           public static void main(String[] args) throws Exception {
                      Map<Integer, String> map = new HashMap<>();
                      map.put(1, "田中");
                      map.put(3, "鈴木");
                      map.put(5, "山田");
           }
}

##getメソッド
 Mapに格納したデータを取得することができるメソッドで、引数にキーを指定することでそのキーの値を取得できる。

サンプルコード
import java.util.HashMap;
import java.util.Map;

public class Sample {
           public static void main(String[] args) throws Exception {
                      Map<Integer, String> map = new HashMap<>();
                      map.put(1, "田中");
                      map.put(3, "鈴木");
                      map.put(5, "山田");

                      System.out.println(map.get(1));
                      System.out.println(map.get(3));
                      System.out.println(map.get(5));
           }
}
実行結果
田中
鈴木
山田

##keySetメソッド
 Mapに含まれるキーの値を返すメソッド。今回はkeySetメソッドを使ってMapのすべてのキーを出力する方法を紹介する。

サンプルコード
import java.util.HashMap;
import java.util.Map;

public class Sample {
           public static void main(String[] args) throws Exception {
                      Map<Integer, String> map = new HashMap<>();
                      map.put(1, "田中");
                      map.put(3, "鈴木");
                      map.put(5, "山田");

                      for(Integer key:map.keySet()) {
                                 System.out.println(key);
                      }
           }
}
実行結果
1
3
5

#valuesメソッド
 valuesメソッドは、定義したMapや列挙子をまとめて受け取ることができる。Mapの値を全て取得する場合はvaluesメソッドを使う。

サンプルコード
```java:サンプルコード
import java.util.HashMap;
import java.util.Map;

public class Sample {
           public static void main(String[] args) throws Exception {
                      Map<Integer, String> map = new HashMap<>();
                      map.put(1, "田中");
                      map.put(3, "鈴木");
                      map.put(5, "山田");

                      for(String values: map.values()) {
                                 System.out.println(values);
                      }
           }
}
実行結果
田中
鈴木
山田

#参考文献
【初心者向け】Javaのmapの使い方を解説!サンプルコードも紹介!
【Java入門】Mapの使い方総まとめ(HashMapで初期化、値のソート)

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?