精华内容
下载资源
问答
  • BigDecimal除法保留两位小数

    千次阅读 2019-11-14 10:15:28
    import java.math.BigDecimal; public class tbd { public static void main(String[] args) { BigDecimal a = new BigDecimal(10); BigDecimal b = new BigDecimal(3); System.out.p...
    import java.math.BigDecimal;
    
    public class tbd {
        public static void main(String[] args) {
            BigDecimal a = new BigDecimal(10);
            BigDecimal b = new BigDecimal(3);
            System.out.println(a.divide(b,2,BigDecimal.ROUND_HALF_UP));
        }
    }
    
    展开全文
  • 今天和大家分享交流一下WPS表格中的最后一个基本运算公式:除法!!在WPS表格使用的过程中,除法公式是很少运用的。虽然很少用,但我还是有备无患吧!WPS表格中的除法公式和大部分软件的除法公式一样的,都是用符号...
    48c6aa3276b2b5ac489400ac8aa2767f.png

    今天和大家分享交流一下WPS表格中的最后一个基本运算公式:除法!!在WPS表格使用的过程中,除法公式是很少运用的。虽然很少用,但我还是有备无患吧!

    WPS表格中的除法公式和大部分软件的除法公式一样的,都是用符号“/”来代替!而且它的用法也是和表格其他公式的用法一样!

    单个除法公式:

    1、首先我们在存放“商”的单元格中输入“=”号,然后点击“被除数”的单元格,这时在“商”的单元格中就出现了“被除数”单元格的编号了(当然也可以直接输入“被除数”单元格的编号)!

    9fc9746e9a20499f7a8ab50c41d4179b.png

    2、然后在“商”的单元格中输入“/”,接着再点击“除数”的单元格,这时在“商”的单元格中就出现了“除数”单元格的编号了(当然也可以直接输入“除数”单元格的编号)!

    31a52eb67ec81792c9eebf488b6a8496.png

    3、最后点击键盘上的“回车键”就可以得出我们需要的商值了!

    一列的批量除法运用:

    1、先按住上一个“单个除法公式”的步骤求出一列中首个单元格的商值!然后点击求出商的单元格,再将鼠标移动到表格的边框,等鼠标光标出现黑色十字“+”的时候;

    3aff22fec939478b1261115af2f579f9.png

    2、接着我们再按住鼠标的左键往下拖动黑色“+”光标,当我们松开鼠标后就可以得到一列的商值了。方法如下图:

    1c6712b0e918edc032c884ae6f2fde4f.gif

    连续除法公式运用:

    1、首先我们在存放“商”的单元格中输入“=”号,然后点击“被除数”的单元格,这时在“商”的单元格中就出现了“被除数”单元格的编号了(当然也可以直接输入“被除数”单元格的编号)!

    860e26d077cf0b7eddbd20cad08c4dd4.png

    2、然后在“商”的单元格中输入“/”,接着再点击“除数1”的单元格,这时在“商”的单元格中就出现了“除数1”单元格的编号了(当然也可以直接输入“除数”单元格的编号)!

    e878518d07713a0f569a378f6f4df2e6.png

    3、再输入“/”,接着点击“除数2”的单元格,需要除以几个数就重复几次步骤2,最后按下“回车键”就可以得到连续除法的商值了!

    7ec26fe22a5618799b494eb1fe27676a.png

    表格数据批量除以一个数:

    在表格数据处理中,让表格中的数字都除以一个数,这是经常会用到的!!!

    1、首先我们在存放“商”的单元格中输入“=”号,然后点击“被除数”的单元格,这时在“商”的单元格中就出现了“被除数”单元格的编号了(当然也可以直接输入“被除数”单元格的编号)!

    986bb844431dab7c06ef9f3a81763123.png

    2、然后在“商”的单元格中输入“/”,接着输入你要除以的数字,比如我要除以10,就直接输入10,然后按下“回车键”就可以得到第一个商值了!

    ca6c4fbb27b2a90b3e4e6628d3710d04.png

    3、然后再按照“一列的批量除法运用”的方法进行拖拉就可以进行批量求出结果了!

    除法公式运用注意事项:

    1、单元格格式不对会导致运算:

    当我们把单元格设置成文本的格式时,是无法运算的(当单元格中只有整数时还是可以运算的)!!!选择表格,单击鼠标右键选择“设置单元格格式”。把单元格格式设置为“常规”或者“数值”就OK了!

    2、单元格除了数值以外还多有其他字符(空格、逗号、引号等等):

    其实这个是最烦人的,因为我们改变单元格格式也改变不了。尤其是“空格”这样的字符很难找出来。

    如果发现运算不了,小编一般都是先全选数字的单元格设置为数值格式;然后再按组合键“Ctrl”+“F”,点击“替换”工具把“空格”字符替换掉(多操作几次,直到出现“表格中无法找到任何替换数据”为止);最后检查数字单元格中是否还有其他非数字的字符没有。

    (以上注意事项可参考小编写的文章《珍藏的WPS表格“求和运算”全解(上)!》)。

    3、“被除数”除不净,有很多位小数:

    有的时候我的商是有无限循环小数的怎么办呢?

    3.1、其实我们也是可以设置保留几位有效数的!选中存放“商值”得单元格,然后鼠标右键选择“设置单元格格式”

    58a4555b2fa45677db16c51c5ef7bbe3.png

    3.2、在弹出的窗口中选择“自定义”,接着在类型中输入相对应的格式类型。比如我们要保留小数点后两位,那就可以输入“.00”,保留三位就输入“.000”。保留几位就在小数点后输入几个“0”就ok了!!!

    69d170d0b4361ee8514b8ad06cfa823e.png

    好了,WPS表格除法运算的分享交流就这些了,绝对值得你珍藏哦!!!然后WPS表格的基本运算就分享结束了,接下来分享交流的是WPS表格中的一些快捷键编辑技巧!

    喜欢的伙伴们可以点击添加关注,也可以在微信公众号里搜索“小桐人乐享汇”添加关注哦!转发、点赞,你们的支持就是小编最大的动力!!!

    展开全文
  • Java中BigDecimal除法保留小数

    千次阅读 2020-03-07 09:20:59
    计算除法,并进行小数保留(结果四舍五入、向上取整、向下取整等)的格式: BigDecimal result= 被除数.divide(除数,保留小数, RoundingMode.结果处理); 说明:1、保留小数填写Integer类型 2、结果处理(四...

    计算除法,并进行小数位的保留(结果四舍五入、向上取整、向下取整等)的格式:

    BigDecimal result= 被除数.divide(除数,保留小数位, RoundingMode.结果处理);
    

    说明:1、保留小数位填写Integer类型
    2、结果处理(四舍五入、向上取整、向下取整等)通过RoundingMode中枚举来实现,常用的:
    RoundingMode.UP:直接进位,比如1.22222如果保留1位小数,得到的就是1.3
    RoundingMode.DOWN:直接省略多余的小数,比如1.28888如果保留1位小数,得到的就是1.2
    RoundingMode.FLOOR:向下取整,2.35保留1位,变成2.3
    RoundingMode.HALF_UP:四舍五入(舍入远离零的舍入模式),2.35保留1位,变成2.4
    RoundingMode.HALF_DOWN:四舍五入(接近零的舍入模式),2.35保留1位,变成2.3
    举例
    实现保留两位小数的结果进行四舍五入处理:

    		BigDecimal bigDecima1 = BigDecimal.valueOf(2);
            BigDecimal bigDecima2 = BigDecimal.valueOf(3);
            BigDecimal divide = bigDecimal .divide(bigDecima2,2, RoundingMode.HALF_UP);
            System.out.println("divide======"+divide);//0.67
    
    展开全文
  • BigDecimal除法保留两位小数

    万次阅读 2018-04-11 10:12:34
    BigDecimal numBigDecimal=new BigDecimal(5.33); numBigDecimal=...//调用,5.33/3后保留两位小数1.7766666=1.78 [java] view plain copy//BigDecimal 截取小数位,四舍五入 public BigDecimal Co...
    1. BigDecimal numBigDecimal=new BigDecimal(5.33);  
    2. numBigDecimal=ConvertNumber(numBigDecimal,3,2);//调用,5.33/3后保留两位小数1.7766666=1.78  
    [java]  view plain  copy
    1. //BigDecimal 截取小数位,四舍五入  
    2.     public BigDecimal ConvertNumber(BigDecimal bigDecimal,int divnum,int num){  
    3.         double a=bigDecimal.doubleValue();  
    4.         a=a/divnum;  
    5.         String numString="0.";  
    6.         for(int i=0;i<num;i++){  
    7.             numString+="0";  
    8.         }  
    9.         DecimalFormat df=new DecimalFormat(numString);   
    10.         return new BigDecimal(df.format(a).toString());  
    11.     }  

    当bigdecimal除不尽(循环小数)后会报错,上面的是一种解决方法,下面的是BigDecimal ,divide方法提供的精确小数方法(推荐使用)

    [java]  view plain  copy
    1. @Test  
    2.     public void Testa(){  
    3.         String currentLat2 = "2.455675";  
    4.         BigDecimal   b   =   new   BigDecimal(currentLat2);  
    5.         b=b.divide(new BigDecimal(3),2,BigDecimal.ROUND_HALF_UP);  
    6.         System.out.println(b);  
    7.     }//输出是0.82  
    [html]  view plain  copy
    1. BigDecimal.setScale();//用于格式化小数点   
    2. setScale(1);//表示保留以为小数,默认用四舍五入方式   
    3. setScale(1,BigDecimal.ROUND_DOWN);//直接删除多余的小数位,如2.35会变成2.3   
    4. setScale(1,BigDecimal.ROUND_UP);//进位处理,2.35变成2.4   
    5. setScale(1,BigDecimal.ROUND_HALF_UP);//四舍五入,2.35变成2.4  
    6. setScaler(1,BigDecimal.ROUND_HALF_DOWN);//四舍五入,2.35变成2.3,如果是5则向下舍  
    详细描述(参考http://www.bdqn.cn/news/201311/11834.shtml):
    [html]  view plain  copy
    1. 1、ROUND_UP  
    2. 舍入远离零的舍入模式。  
    3. 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加1)。  
    4. 注意,此舍入模式始终不会减少计算值的大小。  
    5. 2、ROUND_DOWN  
    6. 接近零的舍入模式。  
    7. 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1,即截短)。  
    8. 注意,此舍入模式始终不会增加计算值的大小。  
    9. 3、ROUND_CEILING  
    10. 接近正无穷大的舍入模式。  
    11. 如果 BigDecimal 为正,则舍入行为与 ROUND_UP 相同;  
    12. 如果为负,则舍入行为与 ROUND_DOWN 相同。  
    13. 注意,此舍入模式始终不会减少计算值。  
    14. 4、ROUND_FLOOR  
    15. 接近负无穷大的舍入模式。  
    16. 如果 BigDecimal 为正,则舍入行为与 ROUND_DOWN 相同;  
    17. 如果为负,则舍入行为与 ROUND_UP 相同。  
    18. 注意,此舍入模式始终不会增加计算值。  
    19. 5、ROUND_HALF_UP  
    20. 向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则为向上舍入的舍入模式。  
    21. 如果舍弃部分 >= 0.5,则舍入行为与 ROUND_UP 相同;否则舍入行为与 ROUND_DOWN 相同。  
    22. 注意,这是我们大多数人在小学时就学过的舍入模式(四舍五入)。  
    23. 6、ROUND_HALF_DOWN  
    24. 向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则为上舍入的舍入模式。  
    25. 如果舍弃部分 > 0.5,则舍入行为与 ROUND_UP 相同;否则舍入行为与 ROUND_DOWN 相同(五舍六入)。  
    26. 7、ROUND_HALF_EVEN  
    27. 向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则向相邻的偶数舍入。  
    28. 如果舍弃部分左边的数字为奇数,则舍入行为与 ROUND_HALF_UP 相同;  
    29. 如果为偶数,则舍入行为与 ROUND_HALF_DOWN 相同。  
    30. 注意,在重复进行一系列计算时,此舍入模式可以将累加错误减到最小。  
    31. 此舍入模式也称为“银行家舍入法”,主要在美国使用。四舍六入,五分两种情况。  
    32. 如果前一位为奇数,则入位,否则舍去。  
    33. 以下例子为保留小数点1位,那么这种舍入方式下的结果。  
    34. 1.15>1.2 1.25>1.2  
    35. 8、ROUND_UNNECESSARY  
    36. 断言请求的操作具有精确的结果,因此不需要舍入。  
    37. 如果对获得精确结果的操作指定此舍入模式,则抛出ArithmeticException。  
    直接用数字转换为BigDecimal时会出现不精确的数值:

    [java]  view plain  copy
    1. BigDecimal  e   =   new   BigDecimal(2.2);   
    2.         System.out.println("e:"+e);    
    3.         BigDecimal  f   =   new   BigDecimal(3.32);   
    4.         System.out.println("f:"+f);    
    5.         System.out.println("e+f="+e.add(f));  
    6.          
    7.         /* 
    8.         e:2.20000000000000017763568394002504646778106689453125 
    9.         f:3.319999999999999840127884453977458178997039794921875 
    10.         e+f=5.520000000000000017763568394002504646778106689453125 
    11.          */  
    数字转换为字符串后再转换为BigDecimal时后计算则是精确的数值(所以先转换为字符串后再转BigDecimal会得到精确的结果):
    [java]  view plain  copy
    1. BigDecimal  e   =   new   BigDecimal("2.2");   
    2.         System.out.println("e:"+e);    
    3.         BigDecimal  f   =   new   BigDecimal("3.32");   
    4.         System.out.println("f:"+f);    
    5.         System.out.println("e+f="+e.add(f));  
    6.         /*  结果如下: 
    7.         e:2.2 
    8.         f:3.32 
    9.         e+f=5.52 
    10.          */  
    展开全文
  • BigDecimal除法,并保留小数后两位

    千次阅读 2020-11-22 09:44:56
    public static void main(String[] args) { BigDecimal a; BigDecimal b; a = new BigDecimal(3); b = new BigDecimal(81); System.out.print(a.divide(b, 2, RoundingMode.HALF_UP)); }
  • 想做一个除法保留两位数,隐约记得BigDecimal有一个divide()方法可以设置保留多少位,但是写出来发现已经过时不建议使用。 网上找一找发现都是大同小异,都还是说的过时方法: b1.divide(b2,3,BigDecimal.ROUND_...
  • BigDecimal contribute = (new BigDecimal(map.get("amount").toString()).divide...100要先乘以整数,否则放到完后再*100,则会出现没有保留两位小数的情况; 修改后: igDecimal contribute = (new BigDecimal(m.
  • 商=被数/除数 关于有的商是小数点后面的是舍去还是保留,这个根据项目中的要求不一样,方式也不一样,我做了一个小小的总结,下面是我算的百分比, double numbe=new BigDecimal((float)a/b).setScale(2, ...
  • 1.BigDecimal类概述及其构造方法  由于在运算的时候,float类型和double类型很容易丢失进度,所以,为了能够精确的表示、计算浮点数,java提供了BigDecimal类  BigDecimal类是不可变得、任意精度的有符号是...
  • 撰文:王国义审校:叔宇1、意义小数的除法是已知个因数的积与其中一个因数,求另一个因数的运算,这和整数的除法一致。2、计算方法 ①除数是整数的除法:按整数除法的计算方法,商的小数点要和被除数的小数点对齐...
  • BigDecimal除法除不尽时会抛出错误,所以需要进行进行 ----四舍五入— 八种舍入模式解释如下 1、ROUND_UP 舍入远离零的舍入模式。 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加1)。 注意,此...
  • BigDecimal除法保留小数

    千次阅读 2019-05-07 10:18:06
    BigDecimal num1 = new BigDecimal(100); BigDecimal num2 = new BigDecimal(32); System.out.print(num1.divide(num2, 2, RoundingMode.HALF_UP)); RoundingMode.DOWN 直接删除多余的小数,如2.35会变成2.3...
  • BigDecimal 相除结果保留两位小数

    千次阅读 2018-11-12 13:55:28
    DecimalFormat df = new DecimalFormat("#.00"); System.out.println("df.format(26.36541):" + df.format(26.36541));...BigDecimal b2 = new BigDecimal("20").divide(new BigDecimal("3"), 2, BigDecimal.ROUN...
  • 效果:
  • BigDecimal四舍五入后保留两位小数

    万次阅读 2019-07-12 14:52:50
    测试代码如下: double dayDiff2 = 5.06135778; BigDecimal usedM = new BigDecimal(dayDiff2);... //保留两位小数且四舍五入 usedM = usedM.setScale(2, BigDecimal.ROUND_HALF_UP); 测试结果如图: ...
  • //保留两位小数  System.out.println("结果是"+b);  //下面将结果转化成百分比  NumberFormat percent = NumberFormat.getPercentInstance();  percent.setMaximumFractionDigits(2);  ...
  • 2、BigDecimal初始化赋值3、BigDecimal的加减乘除运算4、BigDecimal比较大小5、BigDecimal保留两位小数及舍入模式6、BigDecimal其他方法及常量 1、为什么要用BigDecimal ? 工作中我们通过浮点数进行运算时,好像时...
  • php中文网最新课程每日17点准时技术干货分享这篇文章主要介绍了PHP保留两位小数的几种方法,在一些商品价格上也经常遇到这样的需求,今天小编给大家分享的实例代码,需要的朋友可以参考下代码如下所示:$num = 10....
  • 作者:RaphetS第一种方法使用DecimalFormat类举个例子,假如我们需要保留两位小数,我们可以这样写DecimalFormat df = new DecimalFormat("0.00");测试如下:double d = 0.200;DecimalFormat df = new DecimalFormat...
  • BigDecimal保留小数和除法报错问题

    千次阅读 2018-12-14 17:36:34
    public static void main(String[] args) { BigDecimal a = BigDecimal.valueOf(10.522); BigDecimal b = BigDecimal.valueOf(3.111); System.out.println(a.setScale(0, BigDecimal.ROUND...
  • 文章目录异常分析解决措施思考总结 异常分析 其实提示信息已经很明显了,出现...代码如上,使用baseMonth除以workDay,返回的值按照四舍五入的方式保留两位小数。但是还是出现了异常,原因就在于divide的调用方式。 解
  • java.math.BigDecimal保留两位小数

    万次阅读 2019-08-06 17:18:53
    java保留两位小数问题: 一: 四舍五入(四舍五入形式保留两位小数,注意模式ROUND_HALF_UP) double f = 2345.2345; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).double...
  • BigDecimal(str); BigDecimal bd1 = new BigDecimal(str1); BigDecimal bd2 = new BigDecimal(str2); System.out.println(bd); // 结果为 2.00 System.out.println(bd1); // 结果为 2.30 System.out....
  • BigDecimal 保留两位小数

    万次阅读 2019-01-11 14:03:31
    java保留两位小数5种方法 四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public class format { double f = 111231.5585; public void m1() {...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,852
精华内容 1,940
关键字:

bigdecimal除法保留两位