java.lang.NumberFormatException が発生します: For input string: "1.7023484830876092"
文字列を1.70234にトリミングすると問題は解決しますが、文字列を自分でスライスする前に、Javaメソッドを使用してターゲットオブジェクトの容量を活用できるかどうか疑問に思っています。
よろしく、ジェロン。
java.lang.NumberFormatException が発生します: For input string: "1.7023484830876092"
文字列を1.70234にトリミングすると問題は解決しますが、文字列を自分でスライスする前に、Javaメソッドを使用してターゲットオブジェクトの容量を活用できるかどうか疑問に思っています。
よろしく、ジェロン。
DecimalFormatクラスを使用してみることができます。
http://download.oracle.com/javase/1.5.0/docs/api/java/text/DecimalFormat.html
DecimalFormat fm = new DecimalFormat("#.################");
try {
double x = fm.parse("1.12345678901234").doubleValue();
System.out.println(x);
} catch (ParseException e) {
e.printStackTrace();
}
これはうまくいくかもしれません...
おそらくBigDecimalが必要ですか?メモリがある限り、任意の数に対応できるようにサイズを変更できます。として使用しnew BigDecimal(stringNumber)
ます。欠点は、標準の中置演算子(+-* /など)にアクセスできないことです。
ただし、プリミティブが保持できる最大の値が必要な場合は、Long.MAX_VALUE
Long.parseLong を使用して浮動小数点値を解析することはできません。代わりに Double.parseDouble を使用してください。
浮き輪のようです。特に最初の「。」以来。唯一のものです。