Java で配列リストを文字列に変換する方法

  1. Java で + 演算子を使って ArrayList から文字列に変換する
  2. Java の append() メソッドを用いて ArrayList から文字列に変換する
  3. Java の join() メソッドを用いて ArrayList から文字列に変換する
  4. Java の StringUtils クラスを用いた ArrayList から文字列への変換
  5. Java の replaceAll() メソッドを用いて ArrayList から文字列に変換する
  6. Java の joining() メソッドを用いて ArrayList から文字列に変換する
  7. Java の deepToString() メソッドを用いて ArrayList から文字列に変換する

このチュートリアルでは、Java で ArrayList を文字列に変換する方法を紹介します。ArrayList を変換するには、join()append() メソッド、StringUtils クラスなどを利用する方法があります。具体的な例を見てみよう。

Java で + 演算子を使って ArrayList から文字列に変換する

ArrayList を文字列に変換する最も簡単で簡単な方法は、プラス(+)演算子を使用することです。文字列では、プラス演算子は 2つの文字列オブジェクトを連結して 1つのオブジェクトを返します。ここでは、プラス演算子を使用しています。以下の例を参照してください。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = "";
		for (String fruit : fruits) {
			str+= fruit+",";
		}
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
Apple,Orange,Mango,

Java の append() メソッドを用いて ArrayList から文字列に変換する

StringBuilder クラスの append() メソッドを使って ArrayList を文字列に変換することができます。このメソッドは String オブジェクトを返します。以下の例を参照してください。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		StringBuilder str = new StringBuilder();
		for (String fruit : fruits) {
			str.append(fruit);
			str.append(" ");
		}
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
Apple Orange Mango 

Java の join() メソッドを用いて ArrayList から文字列に変換する

ArrayList の要素を一つの文字列に結合するには、文字列クラスの join() メソッドを用いることができる。このメソッドは文字列を返すので、Java で ArrayList を文字列に変換するのに使うことができる。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = String.join(",", fruits);
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
Apple,Orange,Mango

Java の StringUtils クラスを用いた ArrayList から文字列への変換

Apache commons lang ライブラリを使っている場合は、ArrayList から文字列オブジェクトを取得するために StringUtils クラスの join() メソッドを使うことができます。ここでは、2つの引数を取る join() メソッドを利用します。ArrayList と区切り記号の 2つの引数を取る join() メソッドを利用する。以下の例を参照してください。

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

import org.apache.commons.lang3.StringUtils;

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = StringUtils.join(fruits, ", ");
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
Apple, Orange, Mango

Java の replaceAll() メソッドを用いて ArrayList から文字列に変換する

これは、ArrayList から文字列を取得するための少しトリッキーなアプローチです。この方法では、replaceAll() メソッドを使ってリストの角括弧を置換し、toString() メソッドを使ってすべての要素を文字列に変換します。以下の例を参照してください。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = fruits.toString().replaceAll("\\[|\\]", "").replaceAll(", ",", ");
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
Apple, Orange, Mango

Java の joining() メソッドを用いて ArrayList から文字列に変換する

Java 8 以上のバージョンを利用している場合は、Collectors クラスの joining() メソッドを利用して、すべての要素を単一の文字列オブジェクトに集めることができます。ここでは、Java 8 に追加された Java プログラミングの関数型を利用する。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = Arrays.asList(fruits).stream()
                .map(Object::toString)
                .collect(Collectors.joining(", "));
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
[Apple, Orange, Mango]

Java の deepToString() メソッドを用いて ArrayList から文字列に変換する

ArrayList の全要素を文字列オブジェクトに変換する Arrays クラスの deepToString() メソッドを利用することができます。以下の例を参照してください。

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

public class SimpleTesting {
	public static void main(String[] args) {
		// ArrayList
		List<String> fruits = new ArrayList<>();
		fruits.add("Apple");
		fruits.add("Orange");
		fruits.add("Mango");
		System.out.println(fruits);
		String str = Arrays.deepToString(fruits.toArray());   
		System.out.println(str);
	}
}

出力:

[Apple, Orange, Mango]
[Apple, Orange, Mango]

関連記事 - Java String

  • Java で文字列に文字が含まれているかどうかを調べる方法
  • Java で 16 進文字列のバイト配列を変換する方法
  • 関連記事 - Java ArrayList

  • Java で文字列を日付に変換する方法
  • comments powered by Disqus