🙌
【Java】GenericsとCollections
概要
両者の概念がわかりにくいので、備忘録を作成。
Generics
Genericsとは、クラス、メソッド、変数に対して、型パラメータを指定することで、特定の方のデータのみ扱う手法。こうすることで、コンパイル時に型チェックが行われるため、型関連のエラーが起こりにくくなる。
いかが一例で、List <String.> は、「文字列のリスト」を意味する。これを使用することで、このリストは文字列のみ保持することが保障される。そのため、もしここに別の方のオブジェクト(例えば整数)を追加しようとすると、エラーが発生する。
List<String> listOfStrings = new ArrayList<>();
listOfStrings.add("Hello");
listOfStrings.add("World");
コレクション
コレクションとは、データを効率的に管理するための一連のデータ構造である。
例えば、この例ではArrayListという文字列にリストを保存している。ssおいて、要素に対して、indexを割り当てている。
List<String> listOfStrings = new ArrayList<>();
listOfStrings.add("Apple");
listOfStrings.add("Banana");
こちらの例では、Iteratorを使用してリストの要素を順にアクセスしている。iteratorは、コレクションの要素を反復処理するための標準的な手法である。
Iterator<String> iterator = listOfStrings.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
Discussion