【Java】toStringメソッドを使って数値を文字列(String)に変換する!

数値を文字列(String)に変換するにはtoStringメソッドを使用します。

toStringメソッドはオブジェクトの文字列表現を返すメソッドとなります。
そのため、オブジェクトが数値であれば、数値を文字列表現として返すようになることから数値を文字列に変換することができます。

Mapの中に格納した要素を確認したい場合や、リストや配列に格納した要素を確認したい場合などにtoStringメソッドが使われます。

今回はtoStringメソッドを使って以下の場合で数値を文字列(String)に変換します。

⚫︎ Long型からString型へ変換する場合
⚫︎ Int型からString型へ変換する場合
⚫︎ Double型からString型へ変換する場合
⚫︎ 進数を設定してString型へ変換する場合
⚫︎ 書式を指定して数値を文字列に変換する場合
⚫︎ 書式を指定して数値を文字列に変換する場合

toStringメソッドとは

toStringメソッドはオブジェクトの文字列表現を返すメソッドとなります。

toStringメソッドの書き方

toStringメソッドの構文は下記となります。

パラメータ

⚫︎ 数値:
文字列に変換したい数値を指定する
⚫︎ 進数(任意):
文字列に変換する時の進数を指定する(デフォルトは10進数)

toStringの()に数値の変数を指定することで指定した数値をString型へ変換することができます。

しかし、変換対象の数値が文字列として変換できなかった場合には FormatExceptionの例外が発生します。

数値を文字列(String)に変換するサンプルコード

文字列(String)を数値に変換するサンプルコードを紹介します。

Long型からString型へ変換する場合

出力結果

long:234545
toStringメソッドを使って変換
String:234545

Long型からString型へ変換されました。

Int型からString型へ変換する場合

出力結果

int:32768
toStringメソッドを使って変換
String :32768

Int型からString型へ変換されました。

Double型からString型へ変換する場合

出力結果

double:123.4567
toStringメソッドを使って変換
String:123.4567

double型からString型へ変換されました。

進数を指定して数値を文字列に変換する場合

進数を指定して数値を文字列に変換するにはtoStringの第2パラメータに進数を指定します。

出力結果

int :32768
long:1234567890
基数を指定してtoStringメソッドを使う場合
String :499602d2
String:100000

サンプルコードでは16進数、8進数で文字列化しています。
基数の範囲は、「Char RADIX」以上、「Character.MAX_RADIX」以下でなければいけません。

書式を指定して数値を文字列に変換する場合

DecimalFormat」クラスを使用することで、さらにさまざまな書式の数値を文字列に変換することができます。

出力結果

double:123.4567
int :32768
DecimalFormatを使う場合
String:$ 000,123.46
String :$ 032,768

数値をカンマ+通貨記号付き書式の文字列に変換しています。
「DecimalFormat」のコンストラクタでソースを指定します(インスタンスを作成する際にデフォルトコンストラクタを使うと、デフォルトのロケール、パターンを使う)。

「0」は数字を表しますが、その桁に満たない場合は「0」を付けます。
「#」も数字を表しますが、その桁に数字がない場合は何も表示しません。
先頭の「\u00a4」は通貨記号です。日本の場合は、「¥」が表示されます。

今回のポイント

toStringメソッドで数値を文字列に変換

数値を文字列に変換するにはtoStringメソッドを使用する

⚫︎ toStringメソッドで数値を文字列に変換することができ、Byte、Short、Integer、Long、Blog、Doubleの数値プリミティブ型を文字列に変換することができる

⚫︎ 進数を設定して数値型を文字列に変換するにはtoStringメソッドの第2パラメータに進数を指定する

⚫︎ 書式を指定して数値を文字列に変換する場合はDecimalFormatクラスを使用する

関連記事

文字列を数値に変換するparseXXXメソッドについてはこちらをご参考ください。

Writer

ST

株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報