【Java】Mapの魔術師になろうか(初級編)
こんにちわ!Monです!
今回ですが、Mapの魔術師になろう(初級編)です
Java開発をしていれば、よく使うMap!
便利なのでぜひマスターしていただきたく思います!
データを格納したり、出したりを紹介していくよ
では見ていきましょう!
まず、こんなMapを作りましたよ
これらを基準にデータを取り出してみるよ!
// testMapを宣言
Map<Integer, String> testMap = new HashMap<>();
// 「putメソッド」でkey(数字)とバリュー(動物たち)を追加していったよ!
testMap.put(1, "サル");
testMap.put(2, "トリ");
testMap.put(3, "イヌ");
testMap.put(4, "ネコ");
1. キーからバリューを取得!
// testMapから「getメソッド」でデータを取得する
System.out.println(testMap.get(1));
System.out.println(testMap.get(2));
System.out.println(testMap.get(2));
// 結果:
// サル
// トリ
// イヌ
// ネコ
2. キーすべてを取得!
// 「keySetメソッド」でtestMapに存在するkeyを全件取得!
for (Integer key : testMap.keySet()) {
System.out.println(key);
}
// 結果:
// 1
// 2
// 3
// 4
3. バリューすべてを取得!
// 「valuesメソッド」でtestMapに存在するvalueを全件取得!
for(String value : testMap.values()){
System.out.println(value);
}
// 結果:
// サル
// トリ
// イヌ
// ネコ
4. キーとバリューのセットを取得!
// 「entrySetメソッド」で「Map.Entry」で生成します!
for(Map.Entry<Integer, String> entry : testMap.entrySet()){
// 「getKeyメソッド」でkeyを、「getValueメソッド」でvalueを取得!
System.out.println("keyは" + entry.getKey() + "で" + "valueは" + entry.getValue());
}
// 結果:
// keyは1でvalueはサル
// keyは2でvalueはトリ
// keyは3でvalueはイヌ
// keyは4でvalueはネコ
5. こんな使い方できるよ!(短:複で管理)
keyは単品、valueは複数のMap管理も可能なんですよ!
keyからvalue(List型)を取り出して、valueを全件出力してみます!
// keyが「行頭」、value「行全件」を詰めるMapを宣言します
Map<String, List<String>> hiraganeMap = new HashMap<>();
List<String> aGyou = new ArrayList<>();
aGyou.add("あ");
aGyou.add("い");
aGyou.add("う");
aGyou.add("え");
aGyou.add("お");
List<String> kaGyou = new ArrayList<>();
kaGyou.add("か");
kaGyou.add("き");
kaGyou.add("く");
kaGyou.add("け");
kaGyou.add("こ");
hiraganeMap.put("あ", aGyou);
hiraganeMap.put("か", kaGyou);
for(Map.Entry<String, List<String>> entry : hiraganeMap.entrySet()){
for(String value : entry.getValue()) {
System.out.println("行頭が「" + entry.getKey()+"」" + "の「" + value + "」ですよ!");
}
}
こんな感じに出力されます
// 行頭が「あ」の「あ」ですよ!
// 行頭が「あ」の「い」ですよ!
// 行頭が「あ」の「う」ですよ!
// 行頭が「あ」の「え」ですよ!
// 行頭が「あ」の「お」ですよ!
// 行頭が「か」の「か」ですよ!
// 行頭が「か」の「き」ですよ!
// 行頭が「か」の「く」ですよ!
// 行頭が「か」の「け」ですよ!
// 行頭が「か」の「こ」ですよ!
Mapで単品:複数は便利ですよ!
ではっ
![](https://incompengineer.com/wp-content/uploads/2022/08/pexels-photo-169573.jpeg)
是非フォローしてください
最新の情報をお伝えします