-
2019-12-15 14:47:07
方法一:String.foramt("%.f",d)
举个例子:
double d=6.235; String s=String.format("%.2f", d); System.out.println(s); //输出:6.24,说明已经进行四舍五入了。
方法二:使用DecimalFormat类
保留两位小数
import java.text.DecimalFormat; ... double d=6.345; DecimalFormant df=new DecimalFormant("0.00"); System.out.println(df.formant(d)); //输出:6.34 ...
测试:
输入 输出 d=6.00 6.00 d=6.005 6.01 另一种写法
DecimalFormant df1=new DecimalFormant("#.##");
测试:
输入 输出 d=6.00 6 d=6.005 6 方法三:BigDecimal类(大数类)
例子:
import java.math.BigDecimal; ... double d=6.0155; BigDecimal bDecimal=new BigDecimal(d); double d2=bDecimal.setScale(3,BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(d2); ...
测试:
input inout d=6.0155 6.016 d=6.0154 6.015 d=6.000 6.0 。。。后续更新中
更多相关内容 -
java 小数位数控制
2022-04-08 13:57:17//向上取整13.0 运行实例 System.out.println("控制小数的位数:"); DecimalFormat df = new DecimalFormat("#.##"); System.out.println(df.format(12.655));//12.65 System.out.println(df.format(12.658));//...通过DecimalFormat类的format方法
利用此类的format方法,可以发现结果为进行四舍五入后的结果
DecimalFormat df = new DecimalFormat("#.##"); System.out.println(df.format(12.655));//12.65 System.out.println(df.format(12.658));//12.66
通过String类的format方法和System类的printf方法
可以发现这两种方法,都是进行四舍五入后的结果
System.out.println(String.format("%.1f", 12.665));//12.7 System.out.println(String.format("%.1f", 12.635));//12.6 System.out.printf("%.2f", 12.698);//12.70 System.out.printf("%.2f", 12.694);//12.69
常用Math类取舍方法
round方法利用四舍五入,结果为一个整数
floor为向下取整
ceil为向上取整System.out.println(Math.round(12.658));//四舍五入13 System.out.println(Math.floor(12.886));//向下取整12.0 System.out.println(Math.ceil(12.015));//向上取整13.0
运行实例
System.out.println("控制小数的位数:"); DecimalFormat df = new DecimalFormat("#.##"); System.out.println(df.format(12.655));//12.65 System.out.println(df.format(12.658));//12.66 System.out.println(String.format("%.1f", 12.665));//12.7 System.out.println(String.format("%.1f", 12.635));//12.6 System.out.printf("%.2f", 12.698);//12.70四舍五入 System.out.printf("\n%.2f", 12.694);//12.69 System.out.println("\n小数的处理"); System.out.println(Math.round(12.658));//四舍五入13 System.out.println(Math.floor(12.886));//向下取整12.0 System.out.println(Math.ceil(12.015));//向上取整13.0
-
JAVA中关于如何控制小数点后面位数
2018-07-20 17:07:34在我们编程的过程中的时候,也是我(一个java新学员)遇到过的问题,在输出小数的时候觉得小数点后面的位数太长了,譬如10.399999999999.....这样的数字,我只想取小数点后面两位。这个时候就需要通过DecimalFormat...在我们编程的过程中的时候,也是我(一个java新学员)遇到过的问题,在输出小数的时候觉得小数点后面的位数太长了,譬如10.399999999999.....这样的数字,我只想取小数点后面两位。这个时候就需要通过DecimalFormat这个类来控制这个情况。
DecimalFormat df=new DecimalFormat("0.000");
在这里我定义了一个df来调用这个类。
例子:
public class Demo1 { public static void main(String[] args) { DecimalFormat df=new DecimalFormat("0.000"); Scanner input=new Scanner(System.in); double num=158.997999; System.out.println(df.format(num)); } }
括号中的红色字体就是控制小数点后面的位数,我在这里设置了取小数点后的三位数(0.000小数点后三个0,你可以更改这个来达到你想获取的长度)。并且我设置了一个double类型的num值为158.997999。
蓝色字体则数调用这个类的方法format(),参数为我们要控制的数字num,并且输出它。
值得一提是这个方法采取的是四舍五入,也就是我们要舍去的小数点后第4位如果大于5则会先进1再舍去,譬如上面的例子的输出结果为
大概就这些了- -,如有问题
请自行查阅其他资料 恕在下爱莫能助OAO
-
Java控制输出小数点后几位数
2021-03-16 14:38:43import java.text.DecimalFormat; public class test { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("#.000"); // float a = 12.3456789f; float 也可以 double a = 12...import java.text.DecimalFormat; public class test { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("#.000"); // float a = 12.3456789f; float 也可以 double a = 12.3456789; System.out.println(df.format(a)); // 输出的是数字 // System.out.println("%.4f", a); 会报错 System.out.printf("%.4f", a); // c 语言中的输出格式 System.out.println(); System.out.println(String.format("%.5f", a)); // 输出的是字符串 } }
-
Java中控制小数位数
2021-02-13 02:17:44方法一:使用BigDecimalpublic class BigDecimalDemo {public static void main(String[] args) {BigDecimal decimal = new BigDecimal(Math.PI);decimal = decimal.setScale(10, BigDecimal.ROUND_HALF_EVEN);... -
java Double 判断小数点位数
2021-12-29 09:25:15public static Integer getNumberOfDecimalPlace(Double value) { final BigDecimal bigDecimal = new BigDecimal("" + value); final String str = bigDecimal.toPlainString(); final int index = str.indexOf... -
java中小数点位数
2018-03-30 11:48:00import java.math.BigDecimal;import java.text.DecimalFormat;import java.text.NumberFormat;import java.util.Scanner;public class T {public static void main(String[] args) {Scanner sc = new Scanner(Syste... -
关于Java小数点位数保留的解决方案
2021-01-20 03:44:06第一种方法-使用DecimalFormat类 举个例子,假如我们需要保留两位小数,我们可以这样写 DecimalFormat df = new DecimalFormat(0.00); 测试如下: double d = 0.200; DecimalFormat df = new ... -
java设置小数点后位数
2021-02-25 18:49:27//设置小数点后位数 // double1 = Double.parseDouble(df.format(calcu)); // 方案三: double3 = Double.parseDouble(String.format("%.4f",calcu));//4代表小数点后有效位数为4位 // 方案四: BigDecimal bd = new ... -
Java指定保留小数位数的方法
2021-02-28 08:57:41规定必须保留两位小数,刚才看简书的时候正好看到一个指定保留小数位数的工具类的文章,在此基础上,做了一点小修改,用起来更加方便了,有需要的朋友尽管撸走DecimalUtils 类:import java.math.BigDecimal;... -
JAVA 取确定小数点位数
2019-04-29 19:29:28package ... import java.text.DecimalFormat; import java.util.Scanner; public class Floatnum { public static void main(String[] args) { Scanner input = new Scanner(System.in); /... -
JAVA中float小数点后边的位数怎么和控制
2021-04-11 13:33:32JAVA中float小数点后边的位数如何和控制源码奉上packagecom.mtqj.quotes.dao;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.util.ArrayList;importcom.mtqj.... -
java编程中怎么控制小数点后的位数?
2015-12-29 18:04:56//一般控制格式都是通过 DecimalFormat 来控制的.下边是个例子. import java.text.DecimalFormat; public class ControlBit { public static void main(String[] argu){ double money = 399.74099999999993; ... -
java控制double输出的小数点位数
2014-05-16 11:23:03今天ACM碰到了这个情况,因为自己java... 非常简单,还可以控制输出的缩距,很是方便。 java就不一样了,但是java也有它的方便之处 下面用列子来解释,用到的是DecimalFormat类 : public class Test { pu -
Java如何实现保留指定的小数点位数
2021-02-28 08:56:57Java如何实现保留指定的小数点位数发布时间:2020-11-05 15:53:36来源:亿速云阅读:114作者:LeahJava如何实现保留指定的小数点位数?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决... -
java format (保留小数点位数)
2021-02-12 15:13:11java保留两位小数问题:方式一:四舍五入doublef=111231.5585;BigDecimalb=newBigDecimal(f);doublef1=b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();保留两位小数---------------------------------------... -
Java中控制输出小数位数
2018-09-05 18:49:46import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Sc.... -
Java中Double类型设置指定保留小数点位数的方式
2022-03-04 16:01:041、当前方式是保留两位小数点,并且四舍五入 BigDecimal b = new BigDecimal(546542.1214); double discount = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); 2、当前方式是直接保留两位小数点 ... -
JAVA中控制double类型小数点后位数的方法
2018-05-17 10:12:52有时候我们在项目中,需要对double小数进行处理,统一保留几位小数...我们统一保留两位小数,并四舍五入案例:import java.text.DecimalFormat;public class Test1 { public static void main(String[] args) { De... -
java控制float类型的小数位数
2021-03-16 20:54:26三个方法都可以 如下:(一):这种方法方便,我就使用这种方法float...(这里的100就是2位小数点,如果要其它位,如4位,这里两个100改成10000)(二):这个方法也简单,不过还要再转成float型:import java.text.DecimalFormat;... -
实用---java保留小数点后位数以及输出反转数字
2021-02-13 02:04:49//方法一double b = 8.0/3.0; //与C语言不同,此处8.0和8有所区分String format = ... //表示小数点几位System.out.println(format);方法一:使用string的format方法进行小数点的保留。可修改2f中的数字用于确定需要... -
Java处理小数点位数
2019-05-06 16:06:22以取小数点两位为例 import java.math.BigDecimal; import java.text.NumberFormat; public class Demo01 { public static void main(String[] args) { //方法一 double f = 111.57878; BigD... -
Java中最简单的控制小数位数输出方式
2020-12-18 17:11:46System.out.printf格式输出。 public static void main(String[] args){ float f=3.1415926f; System.out.printf("%.2f... } 就是在%与f之间加.(点)再加你要保留的位数。 要注意的是点前面不能有0,跟C语言不一样。 -
对 java 数字小数点后位数进行处理
2018-05-19 12:39:00- 小数点后位数不足的,补0 - 四舍五入,对数据截断 Double d = 123.451789D; DecimalFormat decimalFormat = new DecimalFormat("#.0000000"); DecimalFormat decimalFormat2 = new DecimalFormat("#.000"); ... -
Java double,float设置小数点位数
2019-12-12 21:20:14import java.text.DecimalFormat; public static void main(String[] args) { DecimalFormat dataFormat = new DecimalFormat( "0.0"); double a=12.345; float b=67.890f; System.out.prin... -
java代码如何保留小数点的位数
2021-04-22 15:30:34有时候我们在时候java的时候需要保留小数点的位数,那么你知道java代码如何保留小数点的位数吗?那么下面就让爱站小编为大家介绍java代码保留小数点的位数实现方法。import java.text.* ;import java.math.* ;public... -
java 输出浮点数时 控制 小数位数
2021-07-29 16:03:45//设置小数位数,"0.000" 就是保留三位小数 String y = df.format(x);//返回数据为 String 类型,结果为四舍五入后的值 System.out.println(y); 结果如下: 方法2:类似C的写法 double x = 89.4545464654; String ...
收藏数
22,117
精华内容
8,846