本篇文章给大家谈谈javadouble两位小数的方法,以及double取两位小数 Java对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、Java:对double值进行四舍五入,保留两位小数的几种方法2、java的double类型随机数怎么保留小数点后两位? 要求是不改变数据类型3、在Java中,如何控制一个double数以两位小数形式输出4、java 怎么保留2位小数5、java怎么设置double怎么设置保留两位小数
Java:对double值进行四舍五入,保留两位小数的几种方法
可以四舍五入,也可以直接截断。
比如:输入12345.6789,输出可以是12345.68也可以是12345.67。至于是否需要四舍五入,可以通过参数来决定(RoundingMode.UP/RoundingMode.DOWN等参数)。
2. 实现代码packagecom.clzhang.sample;importjava.math.BigDecimal;importjava.math.RoundingMode;importjava.text.DecimalFormat;importjava.text.NumberFormat;publicclassDoubleTest {/**
* 保留两位小数,四舍五入的一个老土的方法*@paramd*@return*/publicstaticdoubleformatDouble1(doubled) {return(double)Math.round(d*100)/100;}/**
* The BigDecimal class provides operations for arithmetic, scale manipulation, rounding, comparison, hashing, and format conversion.*@paramd*@return*/publicstaticdoubleformatDouble2(doubled) {//旧方法,已经不再推荐使用//BigDecimal bg = new BigDecimal(d).setScale(2, BigDecimal.ROUND_HALF_UP);//新方法,如果不需要四舍五入,可以使用RoundingMode.DOWN
BigDecimal bg =newBigDecimal(d).setScale(2
, RoundingMode.UP);returnbg.doubleValue();}/**
* NumberFormat is the abstract base class for all number formats.
* This class provides the interface for formatting and parsing numbers.*@paramd*@return*/publicstaticString formatDouble3(doubled) {NumberFormat nf=NumberFormat.getNumberInstance();//保留两位小数
nf.setMaximumFractionDigits(2);//如果不需要四舍五入,可以使用RoundingMode.DOWN
nf.setRoundingMode(RoundingMode.UP);returnnf.format(d);}/**
* 这个方法挺简单的。
* DecimalFormat is a concrete subclass of NumberFormat that formats decimal numbers.*@paramd*@return*/publicstaticString formatDouble4(doubled) {DecimalFormat df=newDecimalFormat(“#.00”);returndf.format(d);}/**
* 如果只是用于程序中的格式化数值然后输出,那么这个方法还是挺方便的。
java的double类型随机数怎么保留小数点后两位? 要求是不改变数据类型
一个简单的思路:
保留两位小数是需要四舍五入的,Math类中的round方法就是将double型转为long型:static long round(double a) ,遵循四舍五入的规则。
所以可以先让随机数乘以100,四舍五入后,再除以100,变为double型。
注意 m / n,必须 m 或者 n 是double型,结果才是double型。所以这里可以将分子强制转为double型:(double) Math.round(v * 100) 或者把分母100写为100.0都可以。
在Java中,如何控制一个double数以两位小数形式输出
直接printf
System.out.printf(“%.2f”, 3.1415926);
输出 3.14
c#里面应该也一样, 应该是 System.Console.Write(“%.2f”, 3.1415926)
在java 1.5的版本之前,这么用:
DecimalFormat df = new DecimalFormat();
df.setMaximumFractionDigits(2);
df.setMinimumFractionDigits(2);
System.out.println(df.format(3.1415926));
java 怎么保留2位小数
java保留两位小数的方法:
方式一:
四舍五入
double f = 111231.5585;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
保留两位小数
方式二:
java.text.DecimalFormat df =new java.text.DecimalFormat(“#.00”);
df.format(要格式化的数字);
例:new java.text.DecimalFormat(“#.00”).format(3.1415926)
#.00 表示两位小数 #.0000四位小数 以此类推…
方式三:
double d = 3.1415926;
String result = String .format(“%.2f”);
%.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型
java怎么设置double怎么设置保留两位小数
最简单直接的方法:
double d = 114.145;
d = (double) Math.round(d * 100) / 100;
javadouble两位小数的方法的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于double取两位小数 Java、javadouble两位小数的方法的信息别忘了在本站进行查找喔。