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

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

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リナックスアカデミーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リナックスアカデミーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する