はじめに
PaizaでJavaの問題を解いて、解法にMapを使うあり、よく知らないので、Mapについての使い方メモ
メソッド?データ型?
Rubyではmapというとメソッドを連想する。
array = [1, 2, 3]
array.map {|n| n * 3 }
=> [3, 6, 9]
JavaではMapというとデータ型を指す
いわゆる連想配列、辞書といわれるもので、
キーと値をセットで保持するデータ型のことを指す
Rubyでいうハッシュのこと
使い方
変数の宣言
1. Map<キーの型, 値の型> 変数名 = new HashMap<>()
2. HashMap<キーの型, 値の型> 変数名 = new HashMap<>()
Mapインターフェースのが拡張性があり、
Mapインターフェースを継承しているのが、HashMap
メソッド
・get(key):キーに紐付られた値を取り出す
・put(key, value):キーに紐付けて値を格納する
Map<Integer, Integer> a = new HashMap<>() {
{
for (int i = 0; i < 10; i++) {
put(i, 0);
}
}
};
for (int i = 0; i < a.size ; i++) {
a.get(i)// getの引数にキーを指定
}
おわりに
Mapについて実務で使う機会はどれぐらいあるのだろうと疑問が目覚めました。
参考