【Java】remove/clearメソッドを使ってマップ(Map)からマッピングを削除する!
マップ(Map)からマッピングを削除するにはMapクラスのremoveとclearメソッドを使用します。
removeメソッドは、マップ(Map)からマッピングを削除するメソッドであり、clearメソッドはマップ(Map)からマッピングを全て削除するメソッドとなります。
そのため、マップ中に削除したい値がある場合はremoveメソッドを使用し、マップ中の要素を全て削除したい場合はclearメソッドを使用します。
今回はMapクラスのremoveとclearメソッドを使って以下の場合でのマッピングの削除を行います。
・ マッピングを指定して削除する場合
・ 削除するマッピングが無い場合
・ マッピングを全て削除する場合
目次
removeメソッドとは
Mapクラスのremoveメソッドはキーがマップに存在する場合、このマップからキーのマッピングを削除することができます。
removeメソッドの書き方
removeメソッドの構文は下記となります。
1 |
Map.remove(キー) |
removeメソッドの()に引数としてキーを指定することで指定したキーのマップの要素を削除することができます。
マップにキーのマッピングが含まれていない場合はnullを返します。
clearメソッドとは
Mapクラスのclearメソッドはマップ(Map)からマッピングを全て削除することができます。
clearメソッドの書き方
clearメソッドの構文は下記となります。
1 |
Map.clear() |
clearメソッドを呼び出すことでMapのマッピングを全て削除することができます。
マップ(Map)からマッピングを削除するサンプルコード
マップ(Map)からマッピングを削除するサンプルコードを紹介します。
マッピングを指定して削除する場合
removeメソッドを使って、マッピングを指定して削除します。
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
// マップからマッピングを削除する import java.util. HashMap; import java.util.Map; public class Main { public static void main(String[] args) throws Exception { Map<Integer, String> map = new HashMap<Integer, String>(); // マップに値を格納する map.put(Integer.valueOf(1), "テレビ"); map.put(Integer.valueOf(2), "冷蔵庫"); map.put(Integer.valueOf(3), "掃除機"); map.put(Integer.valueOf(4), "電子レンジ"); map.put(Integer.valueOf(5), "炊飯器"); System.out.println("削除前-------"); System.out.println(map); // マップからマッピングを削除する String removed = map.remove(Integer.valueOf(2)); System.out.println(removed + "を削除しました"); System.out.println("削除後----------"); System.out.println(map); } } |
出力結果
削除前——-
{1=テレビ, 2=冷蔵庫, 3=掃除機, 4=電子レンジ, 5=炊飯器}
冷蔵庫を削除しました
削除後———-
{1=テレビ, 3=掃除機, 4=電子レンジ, 5=炊飯器}
指定したキーのマッピングが削除されました。
削除するマッピングが無い場合
removeメソッドを使って、指定したマッピング無い時状態でも削除を行ってみます。
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
// マップからマッピングを削除する import java.util. HashMap; import java.util.Map; public class Main { public static void main(String[] args) throws Exception { Map<Integer, String> map = new HashMap<Integer, String>(); // マップに値を格納する map.put(Integer.valueOf(1), "テレビ"); map.put(Integer.valueOf(2), "冷蔵庫"); map.put(Integer.valueOf(3), "掃除機"); map.put(Integer.valueOf(4), "電子レンジ"); map.put(Integer.valueOf(5), "炊飯器"); System.out.println("削除前-------"); System.out.println(map); // マップからマッピングを削除する String removed = map.remove(Integer.valueOf(7)); System.out.println(removed + "を削除しました"); System.out.println("削除後----------"); System.out.println(map); } } |
出力結果
削除前——-
{1=テレビ, 2=冷蔵庫, 3=掃除機, 4=電子レンジ, 5=炊飯器}
nullを削除しました
削除後———-
{1=テレビ, 2=冷蔵庫, 3=掃除機, 4=電子レンジ, 5=炊飯器}
指定したマッピングが無い状態で削除した場合はnullを返します。
マッピングを全て削除する場合
clearメソッドを使ってマッピングを全て削除します。
例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
// マップからすべてのマッピングを削除する import java.util. HashMap; import java.util.Map; public class Main { public static void main(String[] args) throws Exception { Map<Integer, String> map = new HashMap<Integer, String>(); // マップに値を格納する map.put(Integer.valueOf(1), "テレビ"); map.put(Integer.valueOf(2), "冷蔵庫"); map.put(Integer.valueOf(3), "掃除機"); map.put(Integer.valueOf(4), "電子レンジ"); map.put(Integer.valueOf(5), "炊飯器"); System.out.println("削除前-------"); System.out.println(map); // 全削除を実行 map.clear(); System.out.println("削除後-------"); System.out.println(map); } } |
出力結果
削除前——-
{1=テレビ, 2=冷蔵庫, 3=掃除機, 4=電子レンジ, 5=炊飯器}
削除後——-
{}
マップのマッピングが全て削除されています。
今回のポイント
removeでマッピングを削除
マップからマッピングを削除するには Mapクラスのremoveメソッドを使用する
• Mapクラスのremoveメソッドでマップからマッピングを削除する
• 削除したいマッピングのキーをremoveメソッドのパラメータに指定する
• 指定したマッピングが無い状態で削除した場合、戻り値は「null」になる
clearでマッピングを全て削除
マップからすべてのマッピングを削除するにはMapクラスのclearメソッドを使用する。
• Mapクラスのclearメソッドでマップからすべてのマッピングを削除する
• clearメソッドを呼び出した後、対象のマップは空になる
ST
株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。