用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

计算器

2017-11-29 作者: 柯侧耳倾听者举报

[java]代码库

package org.crazyit.cal;
 
import java.math.BigDecimal;
 
/**
 * 四则运算类
 *
 * @author yangenxiong yangenxiong2009@gmail.com
 * @author Kelvin Mak kelvin.mak125@gmail.com
 * @version  1.0
 * <br/>网站: <a href="http://www.crazyit.org">疯狂Java联盟</a>
 * <br>Copyright (C), 2009-2010, yangenxiong
 * <br>This program is protected by copyright laws.
 */
public class MyMath {
    // 保留小数点位数
    public static final int DEFAULT_SCALE = 20;
 
    /**
     * 加法
     *
     * @param num1
     *            double
     * @param num2
     *            double
     * @param reutrn
     *            double 两者相加的结果
     */
    public static double add(double num1, double num2) {
        BigDecimal first = getBigDecimal(num1);
        BigDecimal second = getBigDecimal(num2);
        return first.add(second).doubleValue();
    }
     
    /**
     * 为一个数字创建BigDecimal对象
     * @param number
     * @return
     */
    private static BigDecimal getBigDecimal(double number) {
        return new BigDecimal(number);
    }
 
    /**
     * 减法
     *
     * @param num1
     *            double
     * @param num2
     *            double
     * @param reutrn
     *            double 两者相减的结果
     */
    public static double subtract(double num1, double num2) {
        BigDecimal first = getBigDecimal(num1);
        BigDecimal second = getBigDecimal(num2);
        return first.subtract(second).doubleValue();
    }
 
    /**
     * 乘法
     *
     * @param num1
     *            double
     * @param num2
     *            double
     * @param reutrn
     *            double 两者相乘的结果
     */
    public static double multiply(double num1, double num2) {
        BigDecimal first = getBigDecimal(num1);
        BigDecimal second = getBigDecimal(num2);
        return first.multiply(second).doubleValue();
    }
 
    /**
     * 除法
     *
     * @param num1
     *            double
     * @param num2
     *            double
     * @param reutrn
     *            double 两者相除的结果
     */
    public static double divide(double num1, double num2) {
        BigDecimal first = getBigDecimal(num1);
        BigDecimal second = getBigDecimal(num2);
        return first.divide(second, DEFAULT_SCALE, BigDecimal.ROUND_HALF_UP)
                .doubleValue();
    }
 
}

[源代码打包下载]




网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...