26.1.8.12 文字列から値へ(1)

次はいよいよ値の作成です.といってもJavaでは,なかな素直には作らせてくれません.もっとも一般的なやり方は,

その文字列が表わす値をもつ数値オブジェクトを作り,その値をとる

という,回りくどいやり方です.

Javaでは,プログラムの中で“int i;”というぐあいに定義されるふつうの変数以外に,動的に作成できる数値オブジェクトがあります.たとえば,int値1995をもつオブジェクトは

new Integer(1995)

new Integer(“1995”)

によって作るか,クラスIntegerのメソッドvalue0f()を使って

Integer.value0f(“1995”)

として作ります.したがって,入力した文字列が文字列変数lineに入っているとして,

Integer value0f(line)

によって,lineの内容が表わしている値をもつ数値オブジェクトを作ることができます.

これで終り,と思ってはいけません.ここで作られたのは数値オブジェクトであって,数値そのものではないからです.数値オブジェクトがもっている実際の数値は,そのオブジェクトのメソッドintValueによって行ないます.

まとめましょう.整数の文字列表現が文字列lineに入っているものとして,その値をもつ“ふつうの変数”vを作るには

int v = Integer.value0f(line).intValue()

とすることになります.