はじめに
この実験では、Java で ArrayList
を LinkedList
に変換する方法を学びます。両方ともリストを実装するために使用されるクラスですが、ArrayList
は配列のようなリストにデータを格納し、LinkedList
はリンクリストデータ構造を使用します。ArrayList
を LinkedList
に変換するためのいくつかの方法を見ていきます。
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
この実験では、Java で ArrayList
を LinkedList
に変換する方法を学びます。両方ともリストを実装するために使用されるクラスですが、ArrayList
は配列のようなリストにデータを格納し、LinkedList
はリンクリストデータ構造を使用します。ArrayList
を LinkedList
に変換するためのいくつかの方法を見ていきます。
まずは、文字列要素を含む ArrayList
を作成します。
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Mango");
arrayList.add("Apple");
arrayList.add("Orange");
System.out.println(arrayList);
}
}
コードを実行するには、ターミナルを開き、Java ファイルが含まれるディレクトリに移動します。その後、次のコマンドを使用してコードをコンパイルして実行します。
javac Main.java && java Main
次の出力が表示されるはずです。
[Mango, Apple, Orange]
ArrayList
を LinkedList
に変換する最も簡単な方法は、コンストラクタを使うことです。ArrayList
を LinkedList
コンストラクタの引数として渡すことができます。
import java.util.ArrayList;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Mango");
arrayList.add("Apple");
arrayList.add("Orange");
System.out.println("ArrayList: ");
System.out.println(arrayList);
// ArrayList を LinkedList に変換
System.out.println("LinkedList: ");
LinkedList<String> linkedList = new LinkedList<>(arrayList);
System.out.println(linkedList);
}
}
コードを実行するには、ターミナルを開き、Java ファイルが含まれるディレクトリに移動します。その後、次のコマンドを使用してコードをコンパイルして実行します。
javac Main.java && java Main
次の出力が表示されるはずです。
ArrayList:
[Mango, Apple, Orange]
LinkedList:
[Mango, Apple, Orange]
add()
メソッドを使って、ArrayList
の要素を 1 つずつ LinkedList
に追加することもできます。
import java.util.ArrayList;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Mango");
arrayList.add("Apple");
arrayList.add("Orange");
System.out.println("ArrayList: ");
System.out.println(arrayList);
// ArrayList を LinkedList に変換
System.out.println("LinkedList: ");
LinkedList<String> linkedList = new LinkedList<>();
for (String str : arrayList) {
linkedList.add(str);
}
System.out.println(linkedList);
}
}
コードを実行するには、ターミナルを開き、Java ファイルが含まれるディレクトリに移動します。その後、次のコマンドを使用してコードをコンパイルして実行します。
javac Main.java && java Main
次の出力が表示されるはずです。
ArrayList:
[Mango, Apple, Orange]
LinkedList:
[Mango, Apple, Orange]
Java 8 以降のバージョンを使用している場合、Java Stream API
を使って ArrayList
を LinkedList
に変換することができます。stream()
メソッドを使って ArrayList
から要素のストリームを取得し、collect()
メソッドを使って要素を LinkedList
に収集します。
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("Mango");
arrayList.add("Apple");
arrayList.add("Orange");
System.out.println("ArrayList: ");
System.out.println(arrayList);
// Java Stream API を使って ArrayList を LinkedList に変換
System.out.println("LinkedList: ");
LinkedList<String> linkedList = arrayList.stream()
.collect(Collectors.toCollection(LinkedList::new));
System.out.println(linkedList);
}
}
コードを実行するには、ターミナルを開き、Java ファイルが含まれるディレクトリに移動します。その後、次のコマンドを使用してコードをコンパイルして実行します。
javac Main.java && java Main
次の出力が表示されるはずです。
ArrayList:
[Mango, Apple, Orange]
LinkedList:
[Mango, Apple, Orange]
この実験では、Java で ArrayList
を LinkedList
に変換するさまざまな方法を学びました。コンストラクタを使用する方法、要素を 1 つずつ追加する方法、または Java Stream API を使用する方法などです。プロジェクトの要件に応じてこれらの方法を使用できます。