当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java BigDecimal abs()用法及代码示例


  1. java.math.BigDecimal.abs()用于返回BigDecimal,其值为BigDecimal的绝对值,其标度为this.scale()。

    用法:

    public BigDecimal abs()

    参数:该方法不接受任何参数。


    返回值:返回一个BigDecimal,其值是此BigDecimal小数位数的绝对值是this.scale()。

    下面的程序将说明java.math.BigDecimal.abs()方法的使用:
    程序1

    // Java program to demonstrate abs() method 
    import java.io.*; 
    import java.math.*; 
      
    public class GFG { 
      
        public static void main(String[] args) 
        { 
      
            // Creating a BigDecimal object 
            BigDecimal num; 
      
            // Assigning value to num 
            num = new BigDecimal("-51"); 
      
            // Displaying the result 
            System.out.println("Absolute value is " + num.abs()); 
        } 
    }
    输出:
    Absolute value is 51
    

    程序2

    // Java program to demonstrate abs() method 
    import java.io.*; 
    import java.math.*; 
      
    public class GFG { 
      
        public static void main(String[] args) 
        { 
      
            // creating a BigDecimal object 
            BigDecimal num; 
      
            // assign value to num 
            num = new BigDecimal("-63.93471"); 
      
            System.out.println("Absolute value is " + num.abs()); 
        } 
    }
    输出:
    Absolute value is 63.93471
    
  2. java.math.BigDecimal.abs(MathContext mc)返回一个BigDecimal,其值为BigDecimal的绝对值,该绝对值是根据MathContext类的对象mc指定的精度设置将其四舍五入而获得的。

    用法:

    public BigDecimal abs(MathContext mc)

    参数:该函数仅接受MathContext类对象的一个​​参数mc,该参数指定用于舍入BigDecimal的精度设置。

    返回值:返回一个BigDecimal,其值为该BigDecimal的绝对值,该绝对值是通过根据对象mc指定的精度设置对其进行四舍五入而获得的。

    异常:如果结果不精确但舍入模式为UNNECESSARY,则该方法将引发ArithmeticException。


    以下示例程序旨在说明如何在指定的MathContext中使用java.math.BigDecimal.abs()方法:
    程序1

    import java.io.*; 
    import java.math.*; 
      
    public class GFG { 
      
        public static void main(String[] args) 
        { 
      
            // Create 2 BigDecimal objects 
            BigDecimal num, absv; 
      
            MathContext mc = new MathContext(2); 
      
            // Assign value to num 
            num = new BigDecimal("51.93471"); 
      
            // Assign absolute value of num to absv rounded  
            // to 2 precision using mc 
            absv = num.abs(mc); 
      
            System.out.println("Absolute value, rounded to 2 precision is "
            + absv); 
        } 
    }
    输出:
    Absolute value, rounded to 2 precision is 52
    

    程序2

    import java.io.*; 
    import java.math.*; 
      
    public class GFG { 
      
        public static void main(String[] args) 
        { 
      
            // Create 2 BigDecimal objects 
            BigDecimal num, absv; 
      
            MathContext mc = new MathContext(15); 
      
            // Assign value to num 
            num = new BigDecimal("143567812363.93471"); 
      
            // Assign absolute value of num to absv rounded  
            // to 15 precision using mc 
            absv = num.abs(mc); 
      
            System.out.println("Absolute value, rounded to 15 precision is " 
            + absv); 
        } 
    }
    输出:
    Absolute value, rounded to 15 precision is 143567812363.935
    

参考: https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#abs()



相关用法


注:本文由纯净天空筛选整理自RICHIK BHATTACHARJEE大神的英文原创作品 BigDecimal abs() Method in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。