class ParseNumber { public static void main(String[] args){ String s="1000"; int i=Integer.parseInt(s)+1; System.out.println(i); String s1="1000.1"; double d=Double.parseDouble(s1) * 2.0; System.out.println(d); } }
Integer.parseInt("(1+2)") と実行して,3になってくれるなら便利だが, そのようにはなっていない.逆に,int, double型からString型へ変換するには,Integer.toString, Double.toStringなどのメソッドが使える.
int i=10; double d=20.1; String s1=Integer.toString(i); String s2=Double.toString(d);もちろん,
int i=10; String s=""+i;のように,空の文字列に連結するする方法も有効である.
Java言語ではStreamTokenizer を使って入力文字の種類などの応じてトークンごとに切り分けて入力すること もできる.ただし,数値は必ず浮動小数点数(double)として扱うなど,いろいろ問題がある.import java.io.*; // 入力に関するクラスを使う時は必要 class YourName1{ // throws IOException で内部で入出力エラーが起きる可能性があることを示す public static void main(String[] args) throws IOException{ // 入力をするためには,System.inからStreamTokenizerを作る StreamTokenizer st=new StreamTokenizer(new InputStreamReader(System.in)); System.out.println("名字を入力してください> "); while(st.nextToken() != StreamTokenizer.TT_WORD){ System.out.println("名字を入力してください> "); } // 文字列型(String)の変数 family を定義して,トークンの文字列を入れる. String family=st.sval; System.out.println("年齢を入力してください> "); while(st.nextToken() != StreamTokenizer.TT_NUMBER){ System.out.println("名字を入力してください> "); } // 実数型の変数 age を定義して,トークンの数値入れる. double age=st.nval; // 表示する. System.out.println(family+"さんは10年前は"+(age-10)+"歳でした"); } }