double 类型输出0.00

问题描述

给一个double类型的变量复制0.00,打印出来是0.0,有没有方法是double类型保存的是0.00?

解决方案

解决方案二:
doubled=12.1;DecimalFormatdf=newDecimalFormat("#.00");System.out.println(df.format(d));

解决方案三:
引用1楼ylz2007的回复:

Javacodedoubled=12.1;DecimalFormatdf=newDecimalFormat("#.00");System.out.println(df.format(d));

这段代码基本可以解决,不过是写死的,可以把他写活一些doubled=12.1;inti=2;//保留几位小数Stringtemp="";for(intj;j<i;j++){temp=temp+"0";}temp="#."+temp;DecimalFormatdf=newDecimalFormat(temp);System.out.println(df.format(d));
解决方案四:
for循环写错了,j没有初始化for(intj=0;j<i;j++)
解决方案五:
引用2楼hly_886的回复:

引用1楼ylz2007的回复:Javacodedoubled=12.1;DecimalFormatdf=newDecimalFormat("#.00");System.out.println(df.format(d));这段代码基本可以解决,不过是写死的,可以把他写活一些doubled=12.1;inti=2;//保……

inti=2;//保留几位小数这叫写活
解决方案六:
引用1楼ylz2007的回复:

Javacodedoubled=12.1;DecimalFormatdf=newDecimalFormat("#.00");System.out.println(df.format(d));

+1
解决方案七:
C语言最简单,%.2lf直接输出、、、
解决方案八:
publicstaticvoidmain(String[]args){doubled=12.1;DecimalFormatdf=newDecimalFormat("#.00");System.out.println(df.format(d));}java这个最简单了
解决方案九:
#.00--->0.00
解决方案十:
把上面的解决办法封装成方法,然后想要保留几位小数就设置成参数传递进去。。。

时间: 2024-03-21 04:01:23

double 类型输出0.00的相关文章

c++-C++ float类型和double类型的输出

问题描述 C++ float类型和double类型的输出 在VS2012下,用cout<<输出float和double,为什么精度都只有6位? 解决方案 http://blog.sina.com.cn/s/blog_a459dcf501013g39.htmlhttp://wenda.so.com/q/1371005504064718 解决方案二: setprecision Sets the decimal precision used to represent floating-point v

double类型-通过调用函数max_ab实现求a与b的最大值输出,并定义函数max_ab。

问题描述 通过调用函数max_ab实现求a与b的最大值输出,并定义函数max_ab. 从键盘输入两个double类型数据啊,a,b,通过调用函数max_ab实现求a与b的最大值输出,并定义函数max_ab. 解决方案 #include main () { void max_ab(float a,float b); float a,b; printf ("nnt请输入a,b用空格隔开:"); scanf ("%f%f",&a,&b); max_ab(a

数据库表中的一列值为:2007-06-12 列的存储类型为:datatime 但是在Asp.net网面上通过DataList绑定后显示的值为:2007-06-12 0:00:00?????????????????

问题描述 数据库表中的一列值为:2007-06-12列的存储类型为:datatime但是在Asp.net网面上通过DataList绑定后显示的值为:2007-06-120:00:00?怎么样通过DataList控件绑定后让他不显示:0:00:00,而只显示:1985-06-12 解决方案 解决方案二:sql语句不要直接选出时间字段t,拼字符串year(t)+month(t)+day(t)asnewtime解决方案三:'<%#Bind("DateTime","{0:yyy

java中Double类型的运算精度丢失的问题 (小数点多出99999999999999)

 在使用Java,double 进行运算时,经常出现精度丢失的问题,总是在一个正确的结果左右偏0.0000**1. 特别在实际项目中,通过一个公式校验该值是否大于0,如果大于0我们会做一件事情,小于0我们又处理其他事情. 这样的情况通过double计算出来的结果去和0比较大小,尤其是有小数点的时候,经常会因为精度丢失而导致程序处理流程出错.  首先贴一个使用的代码: /** * 将double类型数据转为字符串(如将18.4转为1840,如果需要1840.0,把int强转去掉即可) * @par

java中double类型运算结果异常的解决方法_java

问题: 对两个double类型的值进行运算,有时会出现结果值异常的问题.比如: System.out.println(19.99+20); System.out.println(1.0-0.66); System.out.println(0.033*100); System.out.println(12.3/100); 输出: 39.989999999999995 0.33999999999999997 3.3000000000000003 0.12300000000000001 解决方法: J

Java的double类型探索.

一.double类型的存储表示 Java的浮点类型表示完全按照IEEE754标准(Standards of IEEE 754 floating point numbers),有兴趣可以上IEEE标准网站(www.ieee.org)查阅.该标准的内容基本上描述了浮点类型的存储格式(Storage Layout),下面我从中总结几段,来概括该标准,详细信息请查阅标准原文. 1.什么是浮点数. 计算机上表达实数有两中方法:定点表示(fixed-point)和浮点表示(floating-point).定

class-现有Double类型的数据,如何转换为保留两位小数的数,返回值的类型仍然是Double类型的。

问题描述 现有Double类型的数据,如何转换为保留两位小数的数,返回值的类型仍然是Double类型的. 各位大虾,现有Double类型的数据,如何转换为保留两位小数的数,返回值的类型仍然是Double类型的,而不是字符串类型. 解决方案 double a=1.2345; a=int(a*100)/100.0; 解决方案二: 在java里面没有四舍五入,c,c++才有. java a=int(a*100+0.5)/100.0; 这种很快捷 C 直接输出system.out.printf("%2.

tapestry5的textfield标签显示double类型会四舍五入???

问题描述 tapestry5的textfield标签显示double类型会四舍五入,比如本来值是0.0038,显示到页面后及变成0.004了,明显不符合要求,有设置这个的属性吗?求大神解答!!!!在线等!!!代码如下:<spanclass="input_search_c"><t:textfieldt:id="referenceRate"value="row?.referenceRate"class="input-tex

c# 中double类型

问题描述 我定义了一个变量doublenumber2=Convert.ToDouble(36);Console.WriteLine(number2);Console.ReadKey();为什么输出之后还是36而不是36.0呢在线等 解决方案 解决方案二:本帖最后由 bdmh 于 2014-09-22 11:13:24 编辑解决方案三:方法很多stringstr8=string.Format("{0:F1}",number2);参考格式化解决方案四:这个跟double类型还是int类型没