在java中,怎样把一个double数转换为字符串时,不用科学计数法表示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在java中,怎样把一个double数转换为字符串时,不用科学计数法表示相关的知识,希望对你有一定的参考价值。

参考技术A

BigDecimal 类可以实现

double a1= 1313/7799201.0;
System.out.println(a1);//科学计数法
BigDecimal bg = new BigDecimal(a1);
System.out.println(bg);//普通的计数法

输出

1.6835057847592336E-4
0.000168350578475923357869847851731037735589779913425445556640625

本回答被提问者采纳
参考技术B 1.使用String.valueOf(double)方法
2.直接+"";
Double d = 123.22;
String d1 = String.valueOf(d);
String d2 = d+"";
参考技术C String.valueOf(param) 参考技术D String.valueOf(double d)

Java中怎样判断一个字符串是不是是数字

用java的异常机制,不仅可以判断是否是数字,还可以判断整数或者小数:
public void checkInt(String bh)
try
int num = Integer.parseInt(bh);//将输入的内容转换成int
System.out.println("是整数:"+num);//是整数
catch (NumberFormatException e) //转换成int类型时失败
try
double d =Double.parseDouble(bh);//转成double类型
System.out.println("是小数:"+d);//是小数
catch (NumberFormatException e2) //转成double类型失败
System.out.println("不是数字");


参考技术A

使用Character.isDigit(char)判断,类型转换判断,正则表达式判断都是可以的,下面以正则判断为例。

代码如下:

Numeric(String str)

Pattern pattern = Pattern.compile("[0-9]*");////+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7")   
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() )//这里作判断

return false;

return true;//只有匹配了才会执行这里

参考技术B 最简单的是使用Java系统库函数:
public static boolean isNumeric(String str)
for (int i = str.length();--i>=0;)
if (!Character.isDigit(str.charAt(i)))
return false;


return true;
参考技术C     String str = "123121233";
    System.out.println(str.matches("\\\\d+"));//true表示是数字,false表示不是

参考技术D Object instance of Number

以上是关于在java中,怎样把一个double数转换为字符串时,不用科学计数法表示的主要内容,如果未能解决你的问题,请参考以下文章

C或C++中如何把一个double型的数转换成字符串?

java中 字符串转数值要怎样做

请问C语言中 如何把double类型的数转化为字符串 char

double和char之间怎样转换?谢谢!

java中怎样把double基本数据类型包装在Double类

在Java中怎样把数组转换为ArrayList