Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaでList(リスト)を配列に変換する方法|toArray()とArrays.asList()の使い方

Javaの開発において、List(リスト)配列(Array)の相互変換は非常によく使われる基本的な操作です。

Listを配列に変換する最も簡単かつ推奨される方法は、.toArray()メソッドを使うことです。逆に、配列をListに戻したい場合は、Arrays.asList()メソッドを使用します。

以下では、文字列(String)のListや整数(Integer)のListを、それぞれ対応する配列に変換する具体例を紹介します。

String型のListを配列に変換する

import java.util.ArrayList;
import java.util.List;

public class ConvertArrayListToArray {
    public static void main(String[] args) {
        List<String> itemList = new ArrayList<String>();
        itemList.add("item1");
        itemList.add("item2");
        itemList.add("item3");

        String[] itemsArray = new String[itemList.size()];
        itemsArray = itemList.toArray(itemsArray);

        for(String s : itemsArray)
            System.out.println(s);
    }
}

このコードでは、まずListと同じサイズの配列を生成し、それをtoArray()メソッドの引数として渡しています。こうすることで、Listの要素がそのまま配列にコピーされます。

Integer型のListを配列に変換する

同じアプローチは、整数(Integer)のListを配列に変換する場合にもそのまま使えます。例を見てみましょう。

import java.util.ArrayList;
import java.util.List;

public class ConvertArrayListToArray {
    public static void main(String[] args) {
        List<Integer> intList = new ArrayList<Integer>();
        intList.add(10);
        intList.add(20);
        intList.add(30);

        Integer[] intArray = new Integer[intList.size()];
        intArray = intList.toArray(intArray);

        for(Integer i : intArray)
            System.out.println(i);
    }
}
  • JavaでArrayListをループ処理する方法
  • リストから重複要素を削除する方法
  • Javaで2つのArrayListを比較する方法

String型の配列をListに変換する

もちろん、その逆の操作——配列からListへの変換も可能です。この場合はArrays.asList()メソッドを使用します。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ConvertArrayToList {
    public static void main(String[] args) {
        String[] stringArray = {"item 1", "item 2", "item 3", "item 4"};
        List<String> stringList = new ArrayList(Arrays.asList(stringArray));

        for (String listItem : stringList) {
            System.out.println(listItem);
        }
    }
}

注意点:Arrays.asList()が返すのは固定サイズのリストであり、要素の追加や削除はできません。そのため、上記の例のようにnew ArrayList<>()でラップして新しい可変リストを作成するのが一般的なベストプラクティスです。

  1. JavaでJSON配列(JSONArray)をCSV形式に変換する方法を徹底解説

    JSONは軽量かつ言語に依存しないデータ交換フォーマットとして広く利用されています。JavaではJSONArrayクラスを使うことで、文字列として渡されたJSONテキストを解析し、java.util.Listインターフェースをサポートしたベクトル(リスト)状のオブジェクトとして扱えます。 JSON配列をCSV形式に変換するには、org.json.CDLクラスが便利です。このクラスが提供する静的メソッドtoString()を使用すると、JSONArrayをカンマ区切りのテキストに簡単に変換できます。また、変換したデータをCSVファイルとして保存する場合は、org.apache.commons.i

  2. JavaでリストをJSON配列に変換する方法をわかりやすく解説

    JSONは、軽量でテキストベース、かつ言語に依存しないデータ交換フォーマットです。JSONでは、「オブジェクト」と「配列」という2種類の構造化データを表現できます。オブジェクトはキーと値のペアからなる順序を持たないコレクションであり、配列は値が順序付けられたシーケンスです。 Javaでリスト(List)をJSON配列に変換するには、JSONArray.toJSONString()メソッドを使用します。このメソッドはJSONArrayクラスの静的(static)メソッドであり、引数として渡されたリストをJSON形式のテキストに変換し、その結果をJSON配列として返します。 なお、このメソッドを利