Class MathUtils

java.lang.Object
com.luna.common.math.MathUtils

public class MathUtils extends Object
Author:
Luna
  • Constructor Details

    • MathUtils

      public MathUtils()
  • Method Details

    • pow

      public static long pow(long a, long b)
      次方计算

      对于任何异常都不做处理

      Parameters:
      a - 底数
      b - 幂
      Returns:
    • substract

      public static BigDecimal substract(BigDecimal b1, BigDecimal b2)
      大数相减 四舍五入
      Parameters:
      b1 - big-1
      b2 - big-2
      Returns:
    • substract

      public static BigDecimal substract(BigDecimal b1, BigDecimal b2, int scale)
      大数相减 四舍五入
      Parameters:
      b1 - big-1
      b2 - big-2
      scale - 保留小数位数
      Returns:
    • divide

      public static BigDecimal divide(BigDecimal b1, BigDecimal b2)
      大数相除 四舍五入
      Parameters:
      b1 - big-1
      b2 - big-2
      Returns:
    • divide

      public static BigDecimal divide(BigDecimal b1, BigDecimal b2, int scale)
      大数相除 四舍五入
      Parameters:
      b1 - big-1
      b2 - big-2
      scale - 保留小数位数
      Returns:
    • divide

      public static BigDecimal divide(BigDecimal b1, BigDecimal b2, int scale, RoundingMode roundingMode)
      大数相除
      Parameters:
      b1 - big-1
      b2 - big-2
      scale - 保留小数位数
      roundingMode - RoundingMode
      Returns:
    • add

      public static BigDecimal add(BigDecimal b1, BigDecimal b2, int scale, RoundingMode roundingMode)
      大数相加
      Parameters:
      b1 - big-1
      b2 - big-2
      scale - 保留小数位数
      roundingMode - RoundingMode
      Returns:
    • add

      public static BigDecimal add(BigDecimal b1, BigDecimal b2, int scale)
      大数相加 四舍五入
      Parameters:
      b1 - big-1
      b2 - big-2
      scale - 保留小数位数
      Returns:
    • add

      public static BigDecimal add(BigDecimal b1, BigDecimal b2)
      大数相加
      Parameters:
      b1 - big-1
      b2 - big-2
      Returns:
    • roundingMode

      public static BigDecimal roundingMode(BigDecimal bigDecimal, int scale, RoundingMode roundingMode)
      舍数
      Parameters:
      bigDecimal -
      scale -
      roundingMode - RoundingMode

      RoundingMode.CEILING:取右边最近的整数 RoundingMode.DOWN:去掉小数部分取整,也就是正数取左边,负数取右边,相当于向原点靠近的方向取整 RoundingMode.FLOOR:取左边最近的正数 RoundingMode.UP:向上取整 RoundingMode.HALF_DOWN:五舍六入,负数先取绝对值再五舍六入再负数 RoundingMode.HALF_UP:四舍五入,负数原理同上 RoundingMode.HALF_EVEN:这个比较绕,整数位若是奇数则四舍五入,若是偶数则五舍六入

      Returns:
    • disZeros

      public static BigDecimal disZeros(BigDecimal b1)
      截断0输出
      Parameters:
      b1 - big-1
      Returns:
    • toPlainString

      public static String toPlainString(BigDecimal b1)
      字符串输出
      Parameters:
      b1 - big-1
      Returns:
    • percentMultiply

      public static BigDecimal percentMultiply(BigDecimal b1, BigDecimal b2)
      两个百分比相乘
      Parameters:
      b1 - percent—1
      b2 - percent-2
      Returns: