在本教程中,我們將學(xué)習(xí)如何在Java中將字符串變量轉(zhuǎn)換為double。
class Main { public static void main(String[] args) { //創(chuàng)建字符串變量 String str1 = "23"; String str2 = "456.6"; //將字符串轉(zhuǎn)換為雙精度 //使用parseDouble() double num1 = Double.parseDouble(str1); double num2 = Double.parseDouble(str2); // print double values System.out.println(num1); // 23.0 System.out.println(num2); // 456.6 } }
在上面的示例中,我們使用Double類的parseDouble()方法將字符串變量轉(zhuǎn)換為 double 。
在這里,Double是Java中的包裝器類。要了解更多信息,請?jiān)L問Java包裝器類。
注意:字符串變量的值應(yīng)該為數(shù)字。否則,編譯器將拋出異常。例如,
class Main { public static void main(String[] args) { //創(chuàng)建一個(gè)字符串變量 String str1 = "nhooo"; //非數(shù)字,而是字符串值 // 將字符串轉(zhuǎn)換為雙精度 // 使用 parseDouble() double num1 = Double.parseDouble(str1); //打印雙精度值 System.out.println(num1); // throws NumberFormatException } }
我們還可以使用valueOf()方法將字符串變量轉(zhuǎn)換為雙精度類型變量。例如,
class Main { public static void main(String[] args) { //創(chuàng)建字符串變量 String str1 = "6143"; String str2 = "21312"; //將String轉(zhuǎn)換為double //使用 valueOf() double num1 = Double.valueOf(str1); double num2 = Double.valueOf(str2); //打印雙精度值 System.out.println(num1); // 6143.0 System.out.println(num2); // 21312.0 } }
在上面的示例中,Double類的 valueOf() 方法將字符串值轉(zhuǎn)換為 double。
在這里,valueOf()方法實(shí)際上返回 Double 類的對象。但是,對象會自動(dòng)轉(zhuǎn)換為原始類型。在Java中,這稱為拆箱。要了解更多信息,請?jiān)L問Java自動(dòng)裝箱和拆箱。
那是,
//valueOf()返回Double對象 //對象轉(zhuǎn)換為雙精度 double num1 = Double obj = Double.valueOf(str1);
class Main { public static void main(String[] args) { //創(chuàng)建字符串變量 String str = "614,33"; //將,替換為. str = str.replace(",", "."); //將String轉(zhuǎn)換為double //使用valueOf() double value = Double.parseDouble(str); //打印雙精度值 System.out.println(value); // 614.33 } }
在上面的示例中,我們創(chuàng)建了一個(gè)名為str的字符串。注意這一行,
str = str.replace(",", ".");
在此,replace()方法用(.)點(diǎn)號符代替字符串中的逗號(,)。要了解有關(guān)替換字符的更多信息,請?jiān)L問Java String replace()。
然后,我們使用parseDouble()方法將字符串轉(zhuǎn)換為double。