配列の機能が便利になったようなもの。
→配列はサイズが固定なので、サイズが特定できない場合に適用することが難しい。
Listを用いれば、このような問題はない。
- Listを実装しているクラスは複数あるが、下記コードではArrayListを使っている。
コード例*************************************************
package sample.sample1;
import java.util.ArrayList;
import java.util.List;
public class Sample1_4 {
public static void main(String[] args) {
List< Integer > list = new ArrayList< Integer >();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
list.add(4);
debug(list);
list.add(2, 10);
debug(list);
}
public static void debug(List< Integer > list) {
System.out.println("");
for (int i = 0; i < list.size(); i++) {
System.out.println(i + "番目の要素の値は" + list.get(i));
}
}
}
**************************************************
[実行結果]
0番目の要素の値は0
1番目の要素の値は1
2番目の要素の値は2
3番目の要素の値は3
4番目の要素の値は4
0番目の要素の値は0
1番目の要素の値は1
2番目の要素の値は10
3番目の要素の値は2
4番目の要素の値は3
5番目の要素の値は4
[コード解説]
- Listは要素を追加するたびにサイズが自動的に大きくなる。
そのため、最初にサイズを決めなくても要素を追加することが可能。
- 配列の場合と同様に、for文・拡張for文でも処理することができる。
- add(int)メソッドを呼ぶと、リストの一番うしろの要素にオブジェクトを追加できる。
また、要素の途中に追加することも可能。(list.add(2, 10) → 2番目の要素に10を追加)
[Listの主なメソッド]
void add(E) :要素をリストの最後に追加する
E get(int) :指定された位置の要素を取得する
int size() :要素数を取得する
iterator iterator() :すべての要素を処理するためのイテレータを取得する
E remove(int) :指定された位置の要素を削除する
※「E」はジェネリクスで指定する型パラメータを表す。
最終更新:2009年05月30日 18:51