在遇到需要將double類型轉換string類型時,會出現轉成科學計數法的形式,希望字符串能原樣輸出.直接使用會報java.lang.Double cannot be cast to java.lang.String類型轉換錯誤,以下是搜集后的double轉字符串的方式希望對你有所幫助!
測試環境:jdk13.
測試通過的做法,使用NumberFormat
Double s=Double.parseDouble("10000339") ;
NumberFormat nf = NumberFormat.getInstance();
nf.setGroupingUsed(false);
String s1 = nf.format(s);
運行結果10000339
總結網上的幾種錯誤轉換方式:
方式一:valueOf() 依舊會有科學計數法
Double s=Double.parseDouble("10000339") ;
String s1 = String.valueOf(s);
運行結果1.0000339E7
方式二:toString() 依舊會有科學計數法
Double s=Double.parseDouble("10000339") ;
String s1 = s.toString();
運行結果1.0000339E7
方式三 format 會存在小數情況
Double s=Double.parseDouble("10000339") ;
String s1 = String.format("%.3f", s);
運行結果10000339.000
值得一提是Double s=new Double("10000339");
這種方式在java9版本后就被拋棄使用了.