以下の値を int として解析する方法 java.math に特定のクラスはありますか?
String string="500.0000000";
以下のように試してみましたが、Number Format例外がスローされています。
int x=Integer.parseInt(string).
よろしく、
ラージ
以下の値を int として解析する方法 java.math に特定のクラスはありますか?
String string="500.0000000";
以下のように試してみましたが、Number Format例外がスローされています。
int x=Integer.parseInt(string).
よろしく、
ラージ
次のように 1 行で解析できます。
String string="500.0000000";
int x = Double.valueOf(string).intValue();
System.out.println(x);
また
int x = (int)Double.parseDouble(str);
次のように出力されます
500
ここでDouble.valueOf(string)
文字列を解析して double 値にします
と
を使用して int 型に変換された double 値を解析した.intValue();
double として解析し、次に整数に変換します。
String s = "500.0000000";
double d = Double.parseDouble(s);
int i = (int) d;
Java が double を int にキャストする方法は、小数部を削除することです。
小数は、整数ではないことを意味します。float または double として解析してみてください。
float f = Float.parseFloat(string);
int として必要な場合は、キャストしてみてください。
int x = (int)f;
あなたの主な問題は、double 値を int に解析しようとすることです。ただし、これが他の国でも機能する必要がある場合は、次のものが必要です。
NumberFormat nf = NumberFormat.getNumberInstance( Locale.GERMANY );
System.out.println( nf.parse( "100.0000000" ) ); // -> 1000000000
nf = NumberFormat.getNumberInstance( Locale.US );
System.out.println( nf.parse( "100.0000000" ) ); // -> 100