logo

リストへの Java 配列

Javaでは、 配列 そして リスト は 2 つの最も重要なデータ構造です。このセクションでは、次のことを学びます Java配列をリストに変換する方法。 私たちも作成しました Javaプログラム 配列をリストに変換する さまざまな Java メソッドを使用して。

Java での配列からリストへの変換

Java配列 同じデータ型の複数の値のコレクションです。配列にはオブジェクトとプリミティブ型を含めることができます。それは配列の定義によって異なります。配列定義がプリミティブ型の場合、配列の値は伝染性のメモリ位置に格納されます。配列にオブジェクト要素が含まれる場合、要素はヒープ セグメントに格納されます。

ジャワリスト は、Java Collections フレームワークに属するインターフェイスです。要素をオブジェクトの形式で順序付けて保存し、挿入順序を保持します。これにより、重複した値を保存できるようになります。クラス 配列リストリンクリストベクター そして スタック List インターフェイスを実装します。

リストへの Java 配列

Java では、配列をリストに変換するための 5 つのメソッドが提供されています。

  • ネイティブメソッド
  • Arrays.asList() メソッドの使用
  • Collections.addAll() メソッドの使用
  • Java 8 ストリーム API の使用
  • Guava Lists.newArrayList() メソッドの使用

ネイティブメソッド

これは、Java 配列をリストに変換する最も簡単な方法です。このメソッドでは、まず空のリストを作成し、配列のすべての要素をリストに追加します。例を見てみましょう。

ArrayToListExample1.java

ラテックスの偏微分
 import java.util.*; public class ArrayToListExample1 { public static void main(String args[]) { //creating an array String array[] = { 'Golf', 'Soccer', 'Baseball', 'Volleyball', 'Tennis', 'Badminton', 'Rugby', 'Archery', 'Skiing'}; //prints the array before conversion System.out.println('Array before conversion: '+ Arrays.toString(array)); //calling the generic function that converts Array into List List list = ArrayToListConversion(array); //print the List System.out.println('Array as List: ' + list); } //creating a generic function that converts the Array into List public static List ArrayToListConversion(T array[]) { //creating the constructor of the List class List list = new ArrayList(); //using for-each loop to iterate over the array for (T t : array) { //adding each element to the List list.add(t); } //returns the list converted into Array return list; } } 

出力:

リストへの Java 配列

Arrays.asList() メソッドの使用

java.util パッケージに属する Java Arrays クラスのメソッドです。 asList() メソッドを Collection.toArray() メソッドとともに使用すると、配列ベースの API とコレクションベースの API の間のブリッジとして機能します。

構文:

 public static List asList(T... a) 

このメソッドは、リストをサポートするパラメーターとして配列を解析します。指定された配列のシリアル化可能な固定サイズのリスト ビューを返します。例を見てみましょう。

ArrayToListExample2.java

Javaの部分文字列関数
 import java.util.*; public class ArrayToListExample2 { public static void main(String args[]) { //creating an array to be converted String arr[] = { 'Aston Martin', 'Bugatti', 'Bentley', 'Alfa Romeo', 'Buick', 'Acura', 'Audi', 'BMW', 'Buick' }; //prints array before conversion System.out.println('Array before conversion: '+ Arrays.toString(arr)); //calling generic method that converts Array into List List list = ArrayToListConversion(arr); //prints the List System.out.println('Array after conversion: ' + list); } //creating a generic function that converts the Array into List public static List ArrayToListConversion(T arr[]) { //invoking the asList() method and passing the array to be converted List list = Arrays.asList(arr); //returns the list return list; } } 

出力:

リストへの Java 配列

Collections.addAll() メソッドの使用

の方法です。 Java コレクション クラス。これは java.util パッケージに属します。このクラスは次の名前のメソッドを提供します。 全て追加する() 。このメソッドを使用して配列をリストに変換できます。すべての要素を指定されたコレクションに追加します。要素は個別に指定することも、配列の形式で指定することもできます。それは同じように機能します c.addAll(Arrays.asList(elements))。 これは、他の実装よりも高速な実装です。

構文:

 public static boolean addAll(Collection c, T... elements) 

次の 2 つのパラメータを解析します。

    c:要素を追加するコレクションです。要素: 要素は c に挿入されます。

戻ります 真実 呼び出しの結果としてコレクションが変更された場合。次の例外がスローされます。

  • パラメータ c が追加操作をサポートしていない場合は、次のメソッドがスローされます。 UnsupportedOperationException
  • 指定された配列要素に 1 つ以上の null 値が含まれており、c が null 要素を許可しない場合は、次のエラーがスローされます。 NullPointerException
  • 配列要素によってパラメータ c に追加できない場合は、スローされます。 IllegalPointerException

例を見てみましょう。

ArrayToListExample3.java

 import java.util.*; public class ArrayToListExample3 { public static void main(String args[]) { //creating an Array to be converted String arr[] = { 'San Jose', 'Dallas', 'Chicago','San Antonio', 'Los Angeles', 'Portland', 'Tucson' }; //prints the Array System.out.println('Array before conversion: '+ Arrays.toString(arr)); //method calling List list = ArrayToListConversion(arr); //print the List System.out.println('Array after conversion: ' + list); } //creating a generic function that converts the Array into List public static List ArrayToListConversion(T arr[]) { //creating the constructor of thr List class List list = new ArrayList(); //the method adds Array to the List Collections.addAll(list, arr); //returns the list return list; } } 

出力:

JavaScriptスリープ
リストへの Java 配列

Java 8 ストリーム API の使用

Java 8 はストリーム API を提供します オブジェクトのコレクションを処理します。これは、パイプライン化して目的の結果を生成できる一連のメソッドです。元のデータ構造は変更されないことに注意してください。パイプラインメソッドに基づいて出力を提供します。ストリームはさまざまな方法で実現できますが、次のプログラムでは次の方法を使用しました。 Arrays.stream(オブジェクト[]) 流れを達成するために。

Collectors.toList() メソッド: このメソッドは、エンカウンター メソッドで新しく作成されたリストに入力要素を収集する Collector を返します。

構文:

 public static Collector<t,?,list> toList() </t,?,list>

ここで、T は指定した要素のタイプです。このメソッドは、型、変更可能性、スレッド安全性、直列化可能性を保証しません。

Java プログラムで Stream API を使用して、配列をリストに変換してみましょう。

ArrayToListExample4.java

 import java.util.*; import java.util.stream.Collectors; public class ArrayToListExample4 { //creating a generic function that converts the Array into List public static List ArrayToListConversion(T arr[]) { //creates a list from the specified Array and returns the List return Arrays.stream(arr).collect(Collectors.toList()); } public static void main(String args[]) { //creating an array to be converted into List String arr[] = { &apos;Python&apos;, &apos;HTM&apos;, &apos;Java&apos;, &apos;C&apos;, &apos;C++&apos;, &apos;JavaScript&apos;, &apos;Ruby&apos;, &apos;Swift&apos;, &apos;PHP&apos; }; //prints the Array before conversion System.out.println(&apos;Array: &apos;+ Arrays.toString(arr)); //calling the method created above and storing the elements into the List object List list = ArrayToListConversion(arr); //prints the List System.out.println(&apos;List: &apos; + list); } } 

出力:

リストへの Java 配列

Guava Lists.newArrayList() の使用

の方法です。 リスト 所属するクラス com.google.common.collect パッケージ。クラスはメソッドを提供します newArrayList() 指定された配列の要素を持つ変更可能な空の ArrayList インスタンスを作成します。

メモリの交換

構文:

 public static ArrayList newArrayList(E... elements) 

注: newArrayList() メソッドは、Java 6 以前のバージョンで使用できます。それ以降のバージョンでは非推奨になります。上記のメソッドの代わりに、ArrayList コンストラクターを直接使用します。

ArrayToListExample5.java

 import static com.google.common.collect.Lists.*; import java.util.*; public class ArrayToListExample5 { public static void main(String args[]) { //creating an Array to be converted into a List String arr[] = { &apos;Mango&apos;, &apos;Banana&apos;, &apos;Grapes&apos;, &apos;Apple&apos;, &apos;Plum&apos;, &apos;Blackberry&apos;, &apos;Papaya&apos;, &apos;Orange&apos; }; //prints the Array before conversion System.out.println(&apos;Array: &apos;+ Arrays.toString(arr)); //convert the Array to List List list = ArrayToListConversion(arr); //prints the List System.out.println(&apos;List: &apos; + list); } //creating a generic function that converts the Array into List public static List ArrayToListConversion(T arr[]) { //creates a List from the specified Array return Lists.newArrayList(arr); } } 

出力:

リストへの Java 配列