配列の宣言、変換 戻る
配列を用意する

配列の用意の仕方として、以下の二つがあります。

  • あらかじめ作りたい数を決めて宣言する。
  • 作るときに初期値として値を入れ宣言する。
class Sample { public static void main(String[] args) { // 要素数3のString配列を作る。 String[] aaa = new String[3]; // 初期値として[3,2,1]のString配列を作る。 String[] bbb = new String[] { "3", "2", "1" }; } }

上記のように宣言すると配列を作ることができます。ただし、後になって要素数を追加したいとなると、そのままの変数で要素を増やすことはできません。

Listの宣言と値渡し

Listは配列と違って要素数を意識する必要がありません。Listを宣言し値を代入したい場合、add()を使います。

class Sample { public static void main(String[] args) { // ArrayListの宣言 ArrayList ccc = new ArrayList(); // 値の代入 ccc.add("3"); ccc.add("2"); ccc.add("1"); } }
Listを配列に、配列をListに変換する。

Listを配列に、配列をListに変換したい場合は下記の変換を行います。

class Sample { public static void main(String[] args) { ArrayList ddd = new ArrayList(); ddd.add("3"); ddd.add("2"); ddd.add("1"); // ArrayListからString[]に変換 String[] eee = (String[]) ddd.toArray(new String[0]); String[] fff = new String[] { "6", "4", "5" }; // String配列からListに変換 List ggg = Arrays.asList(fff); } }
asListしたListはaddできない?

Arrays.asListで作成したListは変更不可能(addやremove等、Listの内容を変更すると例外がthrowされる)なリストで返却されます。そのため返却されたListに追加したい場合は新しいListをNewしないといけません。

class Sample { public static void main(String[] args) { String[] ggg = new String[] { "3", "2", "1" }; List hhh = Arrays.asList(ggg); // 新しいArrayListにhhhを入れる。 ArrayList iii = new ArrayList(hhh); } }
既に存在している配列の要素の追加

既に存在しているString配列(下記参考)の末尾に["0"]を追加しなさい。実行後に画面に「3 2 1 0」と表示されることを確認しなさい。

条件:繰り返し処理は使わないこと。

class Sample { public static void main(String[] args) { // String配列初期値 String[] jjj = new String[] { "3", "2", "1" }; String[] kkk; // ここの実装を考える for (int i = 0; i < kkk.length; i++) { String lll = kkk[i]; System.out.print(lll); System.out.print(" "); } } }