前回までの学びJAVA学習の記録⑦【ポリモーフィズム】
目次
1.コレクションフレームワークとは
2.Listインターフェース
3.ArrayListクラスのインスタンスを生成してList型の変数に代入する
4.ListインターフェースとArrayListクラスを使ってみる
5.Mapインターフェース
6.HashMapクラスのインスタンスを生成してMap型の変数に代入
7.MapインターフェースとHashMapクラスを使ってみる
1.コレクションフレームワークとは
コレクションフレームワークとは、コレクション(オブジェクトの集合)を操作するために用意されたJava標準のAPIのこと。用途に応じて、リスト(List)、Set(セット)、Map(マップ)、Queue(キュー)といったインターフェイスを使い分けることができます。
本記事では、リスト(List)とMap(マップ)について記述します。
2.Listインターフェース
Listインターフェースは、順序を持った複数のデータを格納するもので、データにインデックスという番号を振って管理します。インターフェースなので単独では使うことはできません。ArrayListやLinkedListなどのクラスに実装されているので、それらのインスタンスを生成して利用します。
3.ArrayListクラスのインスタンスを生成してList型の変数に代入する
List<String> list = new ArrayList<>();
List<格納する要素の型> 変数名 = new ArrayList<>();
リストに格納する要素の型は、クラス型、インタフェース型しか指定できない。基本データ型(int,double,boolean)に対応するラッパークラス型(Integer,Double,Boolean)を指定します。
4.ListインターフェースとArrayListクラスを使ってみる
import java.util.ArrayList; //①ArrayListクラスをインポート
import java.util.List; //②Listインターフェースをインポート
public class ListSample {
public static void main(String[] args) {
List<String> petList = new ArrayList<>(); //③ArrayListクラスのインスタンスを生成
petList.add("にゃんこ"); //④リストに要素を追加
petList.add("わんこ");
petList.add("ハムスター");
System.out.println(petList.get(0)); //⑤リストから要素を取り出す
System.out.println(petList.get(1));
System.out.println(petList.get(2));
}
}
出力結果
にゃんこ
わんこ
ハムスター
手順としては、
①ArrayListクラスをインポート
②Listインターフェースをインポート
③ArrayListクラスのインスタンスを生成
④リストに要素を追加(addメソッドを使う)
⑤リストから要素を取り出す
イメージとしてはこんな感じです
※インデックスは0から始まり順番に番号が割り振られます。
5.Mapインターフェース
Map(マップ)は、キーと値の組み合わせで要素を管理します。キーは重複せず、順番をもちません。
マップを利用するには、MapインターフェースとHashMapクラスを利用します。
6.HashMapクラスのインスタンスを生成してMap型の変数に代入
Map<String,Integer> animalMap = new HashMap<>();
Map<キーの型,値の型> 変数名 = new HashMap<>();
7.MapインターフェースとHashMapクラスを使ってみる
import java.util.HashMap; //①HashMapクラスをインポート
import java.util.Map; //②Mapインターフェースをインポート
public class MapSample {
public static void main(String[] args) {
Map<String, Integer> animalsMap = new HashMap<>(); //③HashMapクラスのインスタンスを生成
animalsMap.put("犬", 1); //④マップに要素を追加
animalsMap.put("猫", 2);
animalsMap.put("猿", 3);
System.out.println("犬:" + animalsMap.get("犬")); //⑤マップから値を取り出す
System.out.println("猫:" + animalsMap.get("猫"));
System.out.println("猿:" + animalsMap.get("猿"));
}
}
出力結果
犬:1
猫:2
猿:3
手順としては、
①HashMapクラスをインポート
②Mapインターフェースをインポート
③HashMapクラスのインスタンスを生成
④マップに要素を追加(putメソッドを使う)
⑤マップから値を取り出す
イメージとしては、こんな感じです。
参考文献・サイト
「いちばんやさしいJAVAの教本」著者 石井真
https://java-code.jp/238
https://java-code.jp/232