<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    朙的學習筆記

    生活、學習、工作
    posts - 12, comments - 11, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
    今天,一朋友問了我一個問題:
         數(shù)A和數(shù)B
         要求A每高于(或低于)B 0.5,數(shù)C就相應增加或減少0.5。
         這個算法該怎么樣寫?
    很簡單的一個東西。但是要求精度不能丟失。
    查了查,原來可以用BigDecimal來實現(xiàn)。

    寫了個簡單的程序:
        public static double oprbigdecimal(double a,double b,double c){
            
    //轉(zhuǎn)換為bigdecimal
            BigDecimal bigA = new BigDecimal(Double.toString(a));
            BigDecimal bigB 
    = new BigDecimal(Double.toString(b));
            BigDecimal bigC 
    = new BigDecimal(Double.toString(c));
            
            
    //增加值,如果確定是加減相同值可以優(yōu)化的。
            BigDecimal step = new BigDecimal("0.5");
            
            
    //計算差值
            BigDecimal dif = bigA.subtract(bigB);
            
            
    //如果差值在0.5的話。C+0.5
            
    //注意,這里比較時就不要用bigdecimal了。會有問題的
            if (dif.doubleValue() == 0.5)
            
    {
                bigC 
    = bigC.add(step);
            }

            
    //差值在-0.5的話。C-0.5
            if (dif.doubleValue() == -0.5)
            
    {
                bigC 
    = bigC.subtract(step);
            }

            
            
    //返回結(jié)果
            return bigC.doubleValue();
        }

    BigDecimal可以使用String類型的值來初始化對象。
    在BigDecimal中會將浮點數(shù)轉(zhuǎn)換 整型+精度 的表示方法。
    使用add(加)、subtract(減)、multiply(乘)、divide(除)時都會使用整型來計算。精度轉(zhuǎn)為大精度的。
    (注意divide除法需要指定保留精度和四舍五入)
    這樣就可以保護浮點數(shù)計算的精度了。


    Ming
    E-Mail:zengmingcd@163.com

    主站蜘蛛池模板: 亚洲av无码成人黄网站在线观看| 在线精品一卡乱码免费| 免费人成在线观看视频播放| 亚洲国产区男人本色| 女人被免费视频网站| 亚洲日韩精品无码专区| 毛片a级毛片免费观看免下载| 亚洲一卡2卡三卡4卡无卡下载| 毛片免费观看的视频| 精品久久久久久久久亚洲偷窥女厕| 情侣视频精品免费的国产| 色屁屁在线观看视频免费| 在线精品亚洲一区二区三区| 免费观看成人久久网免费观看| 久久精品国产精品亚洲毛片| 亚洲精品动漫免费二区| 亚洲av日韩综合一区久热| 亚洲AV中文无码乱人伦| a毛片免费播放全部完整| 亚洲精品在线视频观看| 成全高清视频免费观看| 一级视频在线免费观看| 亚洲大尺度无码专区尤物| 亚色九九九全国免费视频| 亚洲Av永久无码精品黑人| 国产亚洲精品a在线观看| 9420免费高清在线视频| 亚洲经典千人经典日产| 亚洲日韩涩涩成人午夜私人影院| 国产日韩一区二区三免费高清| 亚洲免费人成视频观看| 免费亚洲视频在线观看| 3344在线看片免费| 亚洲精品国产摄像头| 亚洲精品美女久久久久99| 成人免费观看一区二区| 成人免费视频一区二区| 亚洲图片校园春色| 亚洲福利在线播放| 成人免费午夜无码视频 | 亚洲香蕉在线观看|