小数点区切りとしてカンマを使用して Double を効果的に解析する方法
問題:
文字列値「1,234」のように、区切り文字としてカンマを使用して 10 進数を表します。 Double.valueOf() を使用して解析すると NumberFormatException が発生する可能性があります。
提案された解決策:
p = p.replaceAll(",", " を使用してカンマをピリオドに置き換えます。 ") は有効なアプローチですが、より堅牢な方法があります。 method.
10 進数解析用の Java の NumberFormat:
ロケール固有の区切り文字を使用して小数を処理するために、Java は NumberFormat を提供します。次のコードを考えてみましょう:
NumberFormat format = NumberFormat.getInstance(Locale.FRANCE); Number number = format.parse("1,234"); double d = number.doubleValue();
多言語アプリケーション向けの更新:
多言語アプリケーションでは、ロケール固有の小数点区切り文字が重要です。これをサポートするには、NumberFormat.getInstance(Locale.getDefault()) を使用して現在のロケールの形式を取得します。
NumberFormat の利点:
以上がJava でカンマを小数点として使用した double を安全に解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。