JavaでArrayListを文字列に変換する方法|文字列から配列への変換も解説
この記事では、ArrayListを文字列に変換する方法と、その逆である文字列を配列に変換する方法について解説します。
ArrayListクラスは、java.utilパッケージに含まれているサイズを動的に変更できる可変長配列です。Javaの組み込み配列とArrayListの最大の違いは、組み込み配列は一度作成するとサイズを変更できないのに対し、ArrayListは要素の追加や削除に合わせて自動的にサイズが拡張・縮小されるという点にあります。
変換イメージ
まず、文字列を配列に変換したときの入力と出力の例を見てみましょう。
入力:
入力文字列: Java Program
出力:
文字列から変換後の配列: J a v a P r o g r a m
アルゴリズム
ArrayListから文字列への変換
ステップ1 - 処理を開始する ステップ2 - ArrayListを宣言する ステップ3 - 「add」メソッドを使って要素を追加する ステップ4 - リストの内容をコンソールに表示する ステップ5 - 「toString」メソッドを使って文字列に変換する ステップ6 - 結果の文字列を表示して終了する
文字列から配列への変換
ステップ1 - 処理を開始する ステップ2 - 文字列を定義する ステップ3 - 文字列の長さと同じサイズのchar型配列を作成する ステップ4 - ループ処理で「charAt」メソッドにより各文字を取り出し、配列に格納する ステップ5 - 配列の内容を表示して終了する
例1:ArrayListを文字列に変換する
ArrayListのtoString()メソッドを呼び出すだけで、リスト全体を1つの文字列に変換できます。
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
System.out.println("必要なパッケージをインポートしました");
ArrayList<String> input_array = new ArrayList<>();
input_array.add("Java");
input_array.add("Python");
input_array.add("Scala");
input_array.add("JavaScript");
System.out.println("定義された配列: " + input_array);
String result_string = input_array.toString();
System.out.println("\n変換結果の文字列: " + result_string);
}
}
出力
必要なパッケージをインポートしました 定義された配列: [Java, Python, Scala, JavaScript] 変換結果の文字列: [Java, Python, Scala, JavaScript]
例2:文字列を配列に変換する
次に、文字列を1文字ずつ分解してchar型配列に格納する例を紹介します。
public class Demo {
public static void main(String args[]){
String input_string = "Java Program";
System.out.println("定義された文字列: " + input_string);
char[] result_array = new char[input_string.length()];
for (int i = 0; i < input_string.length(); i++) {
result_array[i] = input_string.charAt(i);
}
System.out.println("文字列から変換後の配列: ");
for (char c : result_array) {
System.out.print(c + " ");
}
}
}
出力
定義された文字列: Java Program 文字列から変換後の配列: J a v a P r o g r a m
補足:もっと簡単な変換方法
toCharArray()で1行変換
JavaにはtoCharArray()という便利なメソッドが標準で用意されており、ループ処理を書かなくても1行で文字列をchar型配列に変換できます。
char[] result_array = input_string.toCharArray();
String.join()でカンマ区切りに結合
toString()メソッドの出力には角括弧 [ ] が含まれます。括弧なしで要素を連結したい場合は、String.join()メソッドを使うと便利です。
String result = String.join(", ", input_array);
// 出力例: Java, Python, Scala, JavaScript
まとめ
ArrayListを文字列に変換するにはtoString()メソッド、文字列を配列に変換するにはcharAt()メソッドを使ったループ処理、またはtoCharArray()メソッドを使用します。用途に応じてこれらを使い分けることで、Javaでのデータ変換処理をより簡潔かつ効率的に記述できます。
-
Javaで文字列配列を1つの文字列に変換・連結する方法を徹底解説
はじめに Javaプログラミングでは、複数の文字列が格納された配列を、1つの文字列に連結したい場面がよくあります。この記事では、代表的な3つの方法――StringBuffer、Arrays.toString()メソッド、そしてJava 8で導入されたStringJoinerクラス――を使った変換手順を、サンプルコードと実行結果とあわせてわかりやすく解説します。記事の最後では、より簡潔に書けるString.join()やStream APIについても紹介します。 方法1:StringBufferを使う 古くから使われる定番のアプローチです。手順は以下のとおりです。 空のStringBuff
-
Javaで文字列と16進数を相互に変換する方法を解説
文字列を16進数(Hexadecimal)に変換するJavaでは、IntegerクラスのtoHexString()メソッドを使うと、整数を引数として渡すだけで16進数表記の文字列を取得できます。このメソッドを利用して、文字列全体を16進数に変換する手順は以下のとおりです。対象となる文字列を用意します。空のStringBufferオブジェクトを作成します。StringクラスのtoCharArray()メソッドで、文字列をchar型の配列に変換します。ループ処理で、配列の各要素を順番に取り出します。ループ内で各文字をint型に変換し、その値をInteger.toHexString()メソッドに渡し