コレクション

テストも兼ねて書き込んでみました。
整理、修正はどんどん行って下さい。
by Kudo

コレクションフレームワーク・・・データ構造を扱うクラス郡
主な種類
 List(配列に近い感じで管理) ・・・ArrayListクラス、LinkedListクラスなど
 Set(一意な値を管理)・・・HashSetクラス、LinkedHashSetクラス、TreeSetクラスなど
 Map(キーと値のセットで管理)・・・HashMapクラス、LinkedHashMapクラス、TreeMapクラスなど
(ListもSetもMapも全てインターフェース)



ArrayListの使用例(※注意: ジェネリクスという仕組みはあえて使っていないので、コンパイル時に警告が出る。コンパイルエラーではなくて警告なので、無視して実行すれば実行可能。)

                                                                                          • -

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator; //拡張for文を使う時は不要

public class ArrayListTest {
public static void main(String[] args) {
List employeeList = new ArrayList(); //ArrayListインスタンスを生成

Employee emp1 = new Employee("Tanaka",20); //従業員クラス1の生成
employeeList.add(emp1); //ArrayListにemp1を追加

Employee emp2 = new Employee("Satoh" ,30); //従業員クラス2の生成
employeeList.add(emp2); //ArrayListにemp2を追加

Employee emp3 = new Employee("Suzuki" ,40); //従業員クラス3の生成
employeeList.add(emp3); //ArrayListにemp3を追加

System.out.println("拡張for文を使った場合");//Java SE5以降よりこの方法が利用可能。簡単。
//拡張for文
for(Object emp: employeeList){
System.out.println(emp);
}

System.out.println("拡張for文を使わなかった場合(イテレーターを使った方法");//Javaの古いバージョンの方法
//拡張for文を使わなかった場合
Iterator itr;
for (itr = employeeList.iterator(); itr.hasNext(); ){
System.out.println( itr.next() );
}
}
}

//従業員クラス
class Employee{
private String name;
private int age;

public Employee(String n, int a){
this.name = n;
this.age = a;
}
//getterとsetterは使わないので省略

//ObjectクラスのtoString()をオーバーライド(表示処理を簡単にする為)
public String toString(){
return "名前: " + name + "\n年齢: " + age ;
}
}