用逗號當小數分隔符號解析Double:綜合解
處理使用逗號號(,) 作為小數分隔符號的資料時,逗號使用Double.valueOf() 將其解析為雙精度數可能會導致NumberFormatException。這是因為 Double.valueOf() 需要一個句點 (.) 作為小數點分隔符號。
一種解決方案是使用 String.replaceAll() 將逗號替換為句點,如問題所示。然而,有一種更強大和區域設定感知的方法,使用 java.text.NumberFormat。
利用 NumberFormat 進行特定於區域設定的解析
NumberFormat 提供了解析和根據指定的區域設定格式化數字。若要解析以逗號為小數點分隔符號的字串,請使用下列步驟:
以下是示範此方法的程式碼:
NumberFormat format = NumberFormat.getInstance(Locale.FRANCE); Number number = format.parse("1,234"); double d = number.doubleValue(); System.out.println(d); // Prints 1.234
透過使用NumberFormat ,您可以以特定於語言環境的方式解析以逗號作為小數分隔符號的雙精確度值,即使在全球化應用程式中也能確保準確的結果。
以上是如何在 Java 中穩健地解析以逗號作為小數分隔符號的雙精度數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!