Javaのリストから配列を作成するサンプルです。
ArrayListクラスのtoArrayメソッドを使用します。
| 確認環境 ・Java 8 |
目次
toArrayメソッド
| public <T> T[] toArray(T[] a) |
- 引数のリストを配列にして返します。
- 配列を変更しても元のリストは変更されません。
- リストを変更しても配列は変更されません。
- ArrayListクラスのメソッドです。
- 以下はJava8 API仕様のArrayListクラスのtoArrayメソッドのリンクです。
https://docs.oracle.com/javase/jp/8/docs/api/java/util/ArrayList.html#toArray-T:A-
コード
toArrayメソッドのサンプルです。
package test1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
// リスト
List<String> colors = new ArrayList<>();
colors.add("赤");
colors.add("黄");
colors.add("青");
// 配列
String[] cs1 = new String[3];
// リストから配列を作成
colors.toArray(cs1);
System.out.println
(Arrays.toString(cs1));//[赤, 黄, 青]
}
}
18行目は、ArrayListクラスのtoArrayメソッドでリストから配列を作成しています。
21行目のtoStringメソッドは、配列を引数にして、文字列を返します。
リストより配列が多い場合
toArrayメソッド使用時に、リストの要素数より配列の要素数が多い場合です。
配列の余った要素にはnullがセットされます。
package test1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
// リスト
List<String> colors = new ArrayList<>();
colors.add("赤");
colors.add("黄");
colors.add("青");
// 配列 (要素数を多くする)
String[] cs1 = new String[4];
// リストから配列を作成
colors.toArray(cs1);
System.out.println
(Arrays.toString(cs1));// [赤, 黄, 青, null]
}
}
15行目は、配列の要素数をリストより多くしています。
18行目は、リストから配列を作成しています。
21行目は、配列を表示しています。4つ目の要素にnullがセットされています。
toStringメソッドは、配列を引数にして、文字列を返します。
リストより配列が少い場合
toArrayメソッド使用時に、リストの要素数より配列の要素数が少い場合です。
配列には、nullがセットされます。
package test1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
// リスト
List<String> colors = new ArrayList<>();
colors.add("赤");
colors.add("黄");
colors.add("青");
// 配列 (要素数を少なくする)
String[] cs1 = new String[1];
// リストから配列を作成
colors.toArray(cs1);
System.out.println
(Arrays.toString(cs1));// [null]
}
}
15行目は、配列の要素数をリストより少なくしています。
18行目は、リストから配列を作成しています。
21行目は、配列を表示しています。nullがセットされています。
toStringメソッドは、配列を引数にして、文字列を返します。
関連の記事
Java 配列の使い方のサンプル
Java ArrayListの使い方のサンプル
Java 配列からリストを作成するサンプル(Arraysクラス)
Java 配列からリストを作成するサンプル(Collectionsクラス)