Java アプリケーションでは、配列の操作と変換が必要になることがよくあります。 Arrays クラスには多くの便利なメソッドが用意されており、その 1 つが asList() メソッドです。この記事では、asList() メソッドの意味と使用法を詳細に説明し、読者がこのメソッドをよりよく理解できるようにいくつかのコード例も示します。
asList() メソッドは、指定された配列内のすべての要素を含む List オブジェクトを返す静的メソッドです。このメソッドの構文は次のとおりです:
public static <T> List<T> asList(T... a)
このメソッドの戻り値の型は List
asList() メソッドを通じて、配列をリストに変換できます。 Java コレクション フレームワークでは、リストは繰り返し要素を含めることができる線形データ構造です。リストは配列とは異なり、動的に展開できるという特徴があり、要素の追加や削除が簡単に行えます。
次の例では、最初にいくつかの要素を含む配列を作成してから、それをリストに変換できます。
String[] strArray = {"Hello","Java","World"}; List<String> strList = Arrays.asList(strArray);
この例では、asList() メソッドを使用して次の配列を作成します。 String 型は List
asList() メソッドのパラメータは参照型である必要があることに注意してください。これは、基本型データが java.lang.Object インターフェイスを実装していないため、List 内の要素として使用できないためです。基本型の配列を List に変換する場合は、それを対応するラッパー クラスに手動でカプセル化する必要があります。
以下は、int 型配列を List に変換するサンプル コードです:
int[] intArray = {1, 2, 3}; List<Integer> intList = Arrays.asList(Arrays.stream(intArray).boxed().toArray(Integer[]::new));
この例では、Arrays.stream() を使用して、int 型配列を IntStream ストリームに変換します。 , 次に、boxed() メソッドを使用してボックス化を解除し、Integer 型に変換し、toArray() を使用して Integer 型の配列に変換します。最後に、asList() メソッドを使用して、整数型配列をリストに変換します。
基本型配列を対応するラッパー クラスに変換する場合、Java 8 より前に手動で実装する必要があることに注意してください。 Java 8 では、Stream API を使用してこのタスクを実行できます。
asList() メソッドを使用する場合は、List オブジェクトのいくつかの特性に注意する必要があります。変換されたListオブジェクトは基本的にラッピング処理であるため、add()やremove()などの操作は実行できません。変換された List オブジェクトに対してこれらの操作を実行しようとすると、UnsupportedOperationException がスローされます。また、List と配列は参照型であるため、List を操作すると元の配列が影響を受ける可能性があります。
次は使用例です:
Integer[] intArray = {1, 2, 3}; List<Integer> intList = Arrays.asList(intArray); intList.set(0, 10);
この例では、まず Integer 型の配列を List
この記事を読むことで、Arrays クラスの asList() メソッドの使用法と制限事項を理解できます。 asList() メソッドは配列とリスト間の変換に便利なツールですが、List オブジェクトは要素の追加と削除をサポートしていないことに注意してください。基本型の配列を List に変換する場合、それを対応するラッパー クラスに手動でカプセル化する必要があることに注意してください。実際の使用では、特定のニーズに応じてリストと配列のどちらかを選択する必要があります。
以上がJava ドキュメントの解釈: Arrays クラスの asList() メソッドの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。