配列とListの相互変換
2961 ワード
1.Listは配列に変換されます。
ArayListにおけるtoArayメソッドを直接呼び出して実現することができる。
Listインターフェースにおいて、toArayには2つの重負荷の方法がある。
配列をListに変更する必要がある場合は、Arays.asListメソッドを使用すればいいです。
ArayListにおけるtoArayメソッドを直接呼び出して実現することができる。
Listインターフェースにおいて、toArayには2つの重負荷の方法がある。
Object[] toArray();
T[] toArray(T[] a);
見ることができるtoArayは、Object配列を返すために無参で呼び出すことができます。指定された戻りタイプで呼び出して、指定されたタイプの配列を返すこともできます。 @Test
public void test() {
List
2.配列をListに変換する配列をListに変更する必要がある場合は、Arays.asListメソッドを使用すればいいです。
@Test
public void t5() {
String[] arr = {"a","b","c"};
List list = Arrays.asList(arr);
list.forEach(x -> System.out.println(x));
}
なお、asList方法は、着信パラメータの種類を利用して配列を作成するものであり、本質的には、集合を実現しただけの方法(size()、toAray()、toAray(T)、get(int)、set(int)、indexOf(Object)、contains(Object)の配列は、上のような集合しか使用できませんので、Liast(int)は、このような集合方法しか使用できません。他の方法を使用すると、例えば、add(E)は、システムがJava.lang.UnipportedOperation Exception(要求された動作をサポートしていない)の異常を投げます。 public static List asList(T... a) {
return new ArrayList<>(a);
}
/**
* @serial include
*/
private static class ArrayList<E> extends AbstractList<E>
implements RandomAccess, java.io.Serializable