List インタフェース (ArrayList / LinkedList / Vector)

順序付けられたコレクション.

整数値の添字によって要素にアクセスしたり, リスト内の要素を取得したりすることができる.

リストは重複する要素を許可し, また複数の null 要素の挿入も許可する:

Collection インタフェースを実装する
コレクション内のオブジェクトを順番で管理できる
同じオブジェクトへの参照を複数保持することができる
null を保持することができる

ArrayList

ArrayList は最も使われているフレームワークの一つで, List のインタフェースのサイズ変更可能な配列の実装になる.

このクラスは, List インタフェースを実装するほか, リストを格納するために内部的に使われる配列のサイズを操作するメソッドを提供する.

ArrayList の主なメソッド

add: リストの最後に, 指定された要素を追加する
addAll: リストの末尾に, 指定された Collection の全ての要素を追加する
clear: リストからすべての要素を削除する
get: 指定した位置にあるリストの要素を返す
isEmpty: リストが空きかどうかを真偽値で返す
remove: 指定した要素番号のリストを削除する
size: リスト内にある要素の数を返す

ArrayList の使い方

ArrayListTest.java

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import java.util.ArrayList;

public class ArrayListTest{
    public static void main(String[] args){

	ArrayList<String> personlist = new ArrayList<String>();

	personlist.add("中田さん");
	personlist.add("鈴木さん");
	personlist.add("仲間さん");
	personlist.add("藤原さん");
	personlist.add("堀北さん");

	System.out.println( "リストのサイズは: " + personlist.size() );

	System.out.println("0 番目の要素は" + personlist.get(0) + "です");
	System.out.println("1 番目の要素は" + personlist.get(1) + "です");
	System.out.println("2 番目の要素は" + personlist.get(2) + "です");
	System.out.println("3 番目の要素は" + personlist.get(3) + "です");
	System.out.println("4 番目の要素は" + personlist.get(4) + "です");

	System.out.println("--------------------------");

	for(int i = 0; i < personlist.size(); i++){
	    System.out.println(i + " 番目の要素は" + personlist.get(i) + "です");
	}

	System.out.println( personlist.isEmpty() );

	personlist.clear(); // リストをクリアする
	System.out.println( personlist.isEmpty() );

	System.out.println( "リストのサイズは: " + personlist.size() );


	
    }
}

ArrayListTest.java の実行結果は:

[wtopia java.cf]$ java ArrayListTest
リストのサイズは: 5
0 番目の要素は中田さんです
1 番目の要素は鈴木さんです
2 番目の要素は仲間さんです
3 番目の要素は藤原さんです
4 番目の要素は堀北さんです
--------------------------
0 番目の要素は中田さんです
1 番目の要素は鈴木さんです
2 番目の要素は仲間さんです
3 番目の要素は藤原さんです
4 番目の要素は堀北さんです
false
true
リストのサイズは: 0