Java 記事

【Java】ArrayListの中身を文字列に直接変換する方法

記事のターゲット

  • 配列の使い方をある程度分かる人

背景

小数点以下の数字を二進数に変換するプログラムを作成中、リストに追加していった数字を拡張for文以外で扱いたかったため方法を探しました。

ほかにもいろいろやり方があると思いますのでここでは1つだけ紹介いたします。

方法

String 変数名 = String.join(連結させたい文字, 配列名);

今回使用する構文は、配列の間に任意の文字を入れることも可能です。

public class forPractice {

    public static void main(String[] args) {

        double x = 0.125;
        List<String> y = new ArrayList<String>();

        while (x > 0) {

            x *= 2;

            if (x >= 1) {
                y.add("1");
                x -= 1;
            } else {
                y.add("0");
            }
        }

        String z = String.join("", y);

        System.out.print("0." + z);

    }
}

実行結果

0.001

上記のものは、二進数変換で使用したものそのままですが、もう一つ簡単な例を紹介しておきます。

List<String> y = new ArrayList<String>();

        for(int i = 1; i <= 10; i++) {
            y.add(String.valueOf(i));
        }

        System.out.println(String.join(",", y));

実行結果

1,2,3,4,5,6,7,8,9,10

2つ目の例では間にカンマを入れています。連結するときに任意の文字を入れられるということがここで分かりますね。

まとめ

 今回は、配列の中身の連結をしていったのですが、いろんなところで使えるテクニックじゃないかと思うのでぜひ試してみてください。

スポンサーリンク

-Java, 記事
-, , , ,

© 2022 ビギテック