Javaで数値を文字列に変換する4つの方法!

JavaJava

Javaで数値を文字列に変換する方法について書いています。
数値から文字列に変換するには、下記のメソッドや演算子を使うことができます。

・IntegerオブジェクトからtoStringメソッドを使う。
・+演算子で文字列と結合する。
・StringクラスのvalueOfメソッドを使う。
・Stringクラスのformatメソッドを使う。

Integer.toStringメソッドで変換する

IntegerクラスからtoStringメソッドを呼び出すことで、文字列に変換することができます。
例えば、下記のように使います。

Integer number = 10;
String numberText = number.toString();

System.out.println(numberText + "です。"); // 10です。
System.out.println(numberText instanceof String); // true

最初にnumber変数(Integerオブジェクト)に対して、10を代入しています。

その次の処理で、number変数からtoStringメソッドを呼び出しています。
これで文字列に変換された値が返ってきます。

最後に返ってきた値の出力と、instanceofで文字列型(String)になっているか確認しています。
プログラムを実行すると、下記のようになりました。

10です。
true

文字列に変換されたことが確認できました。

intからは呼び出せない

ちなみに、プリミティブ型のintからは呼び出すことができません
オブジェクトではないため、下記のようにintの変数から、toStringを使おうとするとエラーになります。

int number = 10;
String numberText = number.toString(); // エラー

+演算子で変換する

+演算子を使って、文字列と結合することでも変換することができます。
例えば、下記のように使います。

Integer number = 100;
String numberText = number + "";

System.out.println(numberText);
System.out.println(numberText instanceof String);

最初にnumber変数(Integerオブジェクト)に対して、100を代入しています。

次の処理で、number変数を+演算子で空文字と文字列結合しています。
これで文字列に変換されます。

プログラムを実行すると、下記のようになりました。

100
true

intも変換可能

プリミティブ型のintも変換することが可能です。
同じように処理してみます。

int number = 200;
String numberText = number + "";

System.out.println(numberText);
System.out.println(numberText instanceof String);

最初にnumber変数(int)に対して、200を代入しました。

次の処理で、先ほどと同じようにnumber変数を+演算子で空文字と文字列結合しています。
プログラムを実行すると、下記のようになりました。

200
true

このように文字列に変換されたことが確認できました。

String.valueOfメソッドで変換する

StringクラスのvalueOfメソッドを使うことでも変換することができます。
例えば、下記のように使います。

String numberText = String.valueOf(77);

System.out.println(numberText);
System.out.println(numberText instanceof String);

最初にStringクラスのvalueOfメソッドに対して、数値の「77」を渡しました。
これで文字列に変換されて、文字列が返ってくるので、返り値をnumberText変数で受け取っています。

プログラムを実行すると、下記のように、文字列変換されたことが確認できました。

77
true

String.formatメソッドで変換する

Stringクラスからformatメソッドを使うことでも変換することができます。
このメソッドは書式文字列を使って、任意のフォーマットの文字列に変換するメソッドです。

String numberText = String.format("%d",88);

System.out.println(numberText);
System.out.println(numberText instanceof String);

最初にStringクラスのformatメソッドに、書式文字列と数値を渡しています。
第1引数の書式文字列に対して、第2引数から後に渡したオブジェクトを当てはめて、文字列にしてくれます。

今回は「%d」としているので、数値をその位置に当てはめて文字列にしています。
プログラムを実行すると、下記のようになりました。

88
true

文字列に変換できました。

Javaで数値を文字列に変換する方法まとめ

今回はJavaで数値を文字列に変換する方法を書きました。
記事の内容をまとめると、下記のようになります。

メソッド/演算子説明
Integer.toString()Integerオブジェクトの数値から変換することができるnumber.toString()
+演算子Integerとintを文字列に変換することができるnumber + “”
String.valueOf()StringクラスのvalueOfメソッドに数値を渡すと文字列に変換できるString.valueOf(77)
String.format()Stringクラスのformatメソッドに数値を渡すと、書式文字列を使って文字列に変換できるString.format(“%d”,88)
Javaプログラミング
プロフィール
yasuaki

福岡でフリーランスをやってます。
業界歴14年になりました、SESで働くことがほとんどです。
なんでもやってますが、Webが得意です。

このブログではプログラミング技術の内容を中心に商品レビューなどを書いています。
記事が参考になりましたら、共有やリンクなどいただけると幸いです。

yasuakiをフォローする
にほんブログ村 IT技術ブログへ
yasuakiをフォローする
コードライク

コメント

タイトルとURLをコピーしました