複数のデータを一つにまとめて扱う方法として配列を学んだが、JavaにはArrayListもある。
最初に要素数の確保が必要のないArrayListは実務でも配列以上に多用される。ここで基本的な使い方をマスターしてしまおう。
宣言は
import java.util.ArrayList; ArrayList<~> 変数名 = new ArrayList<~>();
で行う。<~>の部分は収納するインスタンスの型名を記述する。
int型やdouble型のような基本型の変数は格納できないので注意が必要だ。
また、Java SE7からは右辺の型は省略可能となった、環境が許せばそちらを使うとよいだろう。
ArrayList<~> 変数名 = new ArrayList<>(); 例) ArrayList<String> names = new ArrayList<>();
配列とは違い、要素数の確保は必要なく宣言後すぐに使うことができる。
addメソッドで要素を追加していく
//リストを宣言 ArrayList<String> names=new ArrayList<>(); //リストに追加 names.add("John"); names.add("Paul"); names.add("George");
値を取り出すのはget(index)だ。
System.out.println(names.get(0)); //->John
配列の要素数の取得は.lengthだったがリストではsize()メソッドを使う。
例としてfor文での要素の一覧を記す。
for(int i=0;i<names.size();i++){ System.out.println(names.get(i)); }
配列同様、拡張for文でも全要素を取得できる。
for(String s:names){ System.out.println(s); }
これで基本的な操作はOKだ。要素数があらかじめ予測出来ない場合など出番は多い。どんどん使って慣れていこう。
最後に、よく使われる他のメソッドを一覧しておく。
add(~) | リストの最後に要素を追加 |
---|---|
add(int,~) | 要素のint番目に要素を挿入 |
set(int,~) | リストのint番目の要素を上書き |
get(int) | int番目の要素を取得 |
size() | 要素数を返す |
isEmpty() | 要素数が0であるかをboolで返す。 |
contains(~) | 指定要素が含まれているかをboolで返す |
indexOf(~) | 指定要素のindexを返す(ない場合は-1) |
clear() | 全要素削除 |
remove(int) | int番目の要素を削除 |
remove(~) | 要素を指定して削除(ない場合なにもしない) |
コメント