Stringを数値に変換
WRAPクラスのstatic methodを使って変換しています。
public class ConvertStoI2 {
public static void main(String[] args){
int int1 = Integer.parseInt("1");
long long1 = Long.parseLong("20");
float float1 = Float.parseFloat("0.5");
double double1 = Double.parseDouble("0.06");
double ans1 = int1 + long1 + float1 + double1;
System.out.println(ans1);
}
}
<実行結果>
コンソールに21.56 と表示されます。
計算結果であるans1の型はdouble以外を指定するとコンパイルエラーになります。
四則演算の結果は、式の中で使われる型の中で、大きな値を扱う型に変換されてしまうからです。
<数字の表記>
Javaのcodeのなかで、整数の数字を書くとintに解釈されます。longを記述する場合は、3Lや3lと表現します。
小数点付きの数字を書くとdoubleに解釈されます。floatを記述する場合は、3.14Fや3.14fと表現します。
詳しくは、
http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html
を参照してください。
桁位置を編集された文字列
例えば12,345,678など位の区切りにカンマを挿入した文字列で、数値を表す場合があります。
その文字列を Integer.parseInt("12,345");と書くと、実行時にNumberFormatExceptionが発生し、実行できません。
そのような文字列を数値に変換したい場合は、NumberFormat classやDecimalFormat classを使います。
< Java Primitive Type>
| TYPE | SIZE(bit) | DATA RANGE | COMMENT |
| int | 32 | from -2147483648 to 2147483647 | 符号付整数 from (231-1) to (-231) |
| long | 64 | from -9223372036854775808 to -9223372036854775807 |
符号付整数 from (263-1) to (-263) |
| float | 32 | from 1.40239846e-45f to 3.40282347e+38f |
浮動小数点 |
| double | 64 | from 4.94065645841246544e-324.to 1.79769313486231570e+308 |
浮動小数点 |
| char | 16 | Unicode character (1文字) | Unicode文字 |
| boolean | 1 | true or false | 真もしくは偽 |