Javaで文字列を数値へ変換する方法!【ラッパークラスver】

Javaで文字列を数値に変換
  • このエントリーをはてなブックマークに追加
  • Pocket

Javaで文字列を数値に変換したいときはどうするか?

文字列として入力された値を変換して使いたいというときなど、そこまで頻繁ではないが、Javaでプログラムを組んでいると必要なことがあるだろう。

このページでは、ラッパークラスを用いて文字列を数値に変換する方法をお伝えしよう。

文字列から数値への変換

「文字列として入力された2つの値を使って計算処理をしたい」といった場合など、文字列から数値に変換する必要が出てくる。

文字列はStringクラスで扱うが、Stringクラスには文字列を数値に変換する機能は用意されていない。

Javaでは、数値はその大きさで扱う型が違っている。また、数値を扱う型は通常基本型だが、基本型には格納された値を操作する機能が用意されていないので、各基本型に対応したラッパークラスで文字列から数値へ変換する処理を行う。

各クラスの変換メソッドは以下の通りだ。

Byte型

Byte型オブジェクト.parseByte(String s)

戻り値の型

public static byte

内容

文字列の引数を符号付き 10 進数の整数型として返す。文字列にある文字はすべて、10 進数である必要がある。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号であってもかまわない。その場合、結果として得られる整数値が返される。

パラメータ:

s - byte型の範囲(精度)の大きさの文字列

戻り値:

10 進数の引数で表される整数値

Short型

Short型オブジェクト.parseShort(String s)

戻り値の型

public static short 

内容

文字列の引数を符号付き 10 進数の整数型として返す。文字列にある文字はすべて、10 進数である必要がある。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号であってもかまわない。その場合、結果として得られる整数値が返される。

パラメータ:

s - short型の範囲(精度)の大きさの文字列

戻り値:

10 進数の引数で表される整数値

Integer型

Integer型オブジェクト.parseInt(String s)

戻り値の型

public static int

内容

文字列の引数を符号付き 10 進数の整数型として返す。文字列にある文字はすべて、10 進数である必要がある。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号であってもかまわない。その場合、結果として得られる整数値が返される。

パラメータ:

s - int型の範囲(精度)の大きさの文字列

 

戻り値:

10 進数の引数で表される整数値

Long型

Long型オブジェクト.parseLong(String s)

戻り値の型

public static long

内容

文字列の引数を符号付き 10 進数の整数型として返す。文字列にある文字はすべて、10 進数である必要がある。 ただし、1 番目の文字だけは、負の値を表すためにマイナス記号であってもかまわない。その場合、結果として得られる整数値が返される。

L または l を型指定子として文字列の末尾に付けることは、Java プログラム言語のソースコードの場合とは違って許されない。ただし、基数が 22 よりも大きい桁の数字には、L またはl が現われます。

パラメータ:

s - long型の範囲(精度)の大きさの文字列

戻り値:

10 進数の引数で表される整数値

Float型

Float型オブジェクト.parseFloat(String s)

戻り値の型

public static float 

内容

Float クラスの valueOf メソッドを実行した場合と同様に、指定された String が表す値に初期化された新しい float 値を返す。

パラメータ:

s -解析される文字列

戻り値:

文字列引数で表される float 値

Double型

Double型オブジェクト.parseDouble(String s)

戻り値の型

public static double

内容

Double クラスの valueOf メソッドを実行した場合と同様に、指定された String が表す値に初期化された新しい double 値を返す。

パラメータ:

s -解析される文字列

戻り値:

文字列引数で表される double 値

各ラッパークラスともに、引数で渡された文字列が結果の型の範囲内でない場合、エラー(NumberFormatException )が発生し処理が終了してしまう。文字列にどのような型の範囲の値が入るか意識してクラスを選ぶようにしよう。

サンプルコード

実行結果

サンプルコードの説明

  • [1] String型の変数priceStrを「12,345」で初期化。
  • [2] priceStrの区切り文字「,」をStringクラスのreplaceAllメソッドを使用して取り除き、変数priceStr1へ代入。
  • [3] 変数priceStr1を、IntegerクラスのparseIntメソッドを使用してint型の整数に変換し、変数priceへ代入。
  • [4] 変数priceの値を表示。

まとめ

このページではJavaで文字列を数値に変換して使用する方法をお伝えした。

「数値→文字列」は少ないだろうが、「文字列から数値」は頻繁にあるはずだ。参考にしていただきたい。

ラッパークラスの詳細については下記ページを参考にしてほしい。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*