LoginSignup
0
0

【Java】 重複しない配列を扱う|HashMapの使い方ガイド

Last updated at Posted at 2023-06-04

はじめに

HashMapはキーと値のペアを操作するためのコレクションを使用するためのAPIです。
この記事では、HashMapの基本的な使い方と操作方法について解説します。
初心者の方にも分かりやすく説明するため、具体的なコード例を交えながら説明します。

HashMapとは

HashMapはキーと値のペアを格納するためのデータ構造です。
キーは一意であり、値と対応付けられます。これにより、効率的なデータの検索や取得が可能となります。

HashMapの宣言と要素の追加

HashMapの宣言は以下のように行います。

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

// 任意の名称ででコレクションを作成します 今回は"map"にしてあります
Map<Keyのデータ型, 値のデータ型> map = new HashMap<Keyのデータ型, 値のデータ型>();

HashMapを使用する場合、Mapも同時にインポートする必要があります。
Mapを明示的に指定しない場合、コンパイルエラーが発生するため注意が必要です。

コレクションの追加と上書き

map.put("apple", "りんご");  // appleのキーにりんごのvalueがセットされる
map.put("grapes", "ぶどう"); // grapesのキーにぶどうのvalueがセットされる
map.put("apple", "林檎"); // すでに関連付けられていた場合は置換されます

// 置換専用のreplace()メソッドも有効です
map.replace("apple", "リンゴ");

値の取得

String list1 = map.get("apple");  // りんごが返ってきます
String list2 =  map.get("grapes"); // ぶどうが返ってきます
String list3 =  map.get("orange"); // 存在しないキーの場合 nullが返ってきます

キーの削除

map.remove("apple"); // appleというキーの要素を削除します

キーの一覧を取得する

import java.util.HashMap; 
import java.util.Map;
// Setをインポートする
import java.util.Set;


// 返り値は配列でいうところの[apple, grapes]のようになっています
Set<String> keys = map.keySet();
// 以下のような繰り返しも可能
for (String key : keys) {
    System.out.println(key);
    // 次のようにgetメソッドの引数としてkey指定を行い要素取得もできる
    // map.get(key);
}

/**
 * 出力結果)
 * apple
 * grapes
 */

要素数を取得する

map.size(); // 今回の場合は"2"が出力される

要素が空か判定する

Map<String, String> fruits = new HashMap<String, String>();
fruits.isEmpty();  // true
fruits.put("orange", "みかん");
fruits.isEmpty();  // false

繰り返し処理でキーと値を取得する

Map<String, String> name = new HashMap<String, String>();
name.put("いしかわ", "石川");
name.put("たなか", "田中");
name.put("さとう", "佐藤");
// key, valueはput()メソッドの第一引数、第二引数が入る
name.forEach((key, value) -> {
    System.out.println(key + ": " + value);
});
/**
 * 出力結果)
 * いしかわ: 石川
 * たなか: 田中
 * さとう: 佐藤
 */

まとめ

本記事では、HashMapの基本的な使い方について解説しました。
HashMapを宣言し、要素の追加や取得、削除、存在確認、要素数の取得などの基本的な操作方法について説明しました。

HashMapは、キーと値のペアを格納するための便利なデータ構造であり、様々な場面で活用されます。例えば、データのインデックスとしてキーを使用し、それに対応する値を効率的に取得することができます。

また、HashMapは他のデータ構造と比較して高速な検索が可能であり、大量のデータを効率的に管理することができます。

以上でHashMapの基本的な使い方の解説を終わります。

もし何か疑問点や追加の情報が必要な場合は、公式ドキュメントや他の参考資料も活用してください。

0
0
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
0
0