BigDecimal negate() Function in Java

  1. The java.math.BigDecimal.negate() method returns a BigDecimal whose value is the negated value of the BigDecimal with which it is used.

    Syntax:

    public BigDecimal negate()

    Parameters: The method does not take any parameters .

    Return Value: This method returns the negative value of the BigDecimal object and whose scale is this.scale().

    Below programs will illustrate the use of java.math.BigDecimal.negate() function:
    Program 1 :



    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java program to demonstrate negate() method
    import java.math.*;
      
    public class GFG {
      
       public static void main(String[] args) {
      
          // Create a BigDecimal object
          BigDecimal num;
            
          // Assign value to num
          num = new BigDecimal("4743");
      
          System.out.println( "Negated value is " + num.negate() );
       }
    }

    chevron_right

    
    

    Output:

    Negated value is -4743
    

    Program 2:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java program to demonstrate negate() method
    import java.math.*;
      
    public class GFG {
      
       public static void main(String[] args) {
      
          // Create a BigDecimal object
          BigDecimal num;
            
          // Assign value to num
          num = new BigDecimal("-9674283517.97");
      
          System.out.println( "Negated value is " + num.negate() );
       }
    }

    chevron_right

    
    

    Output:

    Negated value is 9674283517.97
    
  2. The java.math.BigDecimal.negate(MathContext mc) method returns a BigDecimal whose value is the negated value of it, i.e. obtained by rounding off according to the precision settings specified by the object of MathContext class.

    Syntax:

    public BigDecimal negate(MathContext mc)

    Parameters: The method accepts only one parameter mc of MathContext class object which specifies the precision settings for rounding off the BigDecimal.

    Return Value: This method returns the negated value of the object which is rounded as per the precision settings.

    Exception: The method might throw ArithmeticException if the result obtained is not exact but the rounding mode is UNNECESSARY.

    Below programs will illustrate the use of java.math.BigDecimal.negate(MathContext mc) method:
    Program 1

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java program to demonstrate negate(MathContext mc) method
    import java.math.*;
      
    public class GFG {
      
        public static void main(String[] args)
        {
      
            // create 2 BigDecimal objects
            BigDecimal num, negv;
      
            MathContext mc = new MathContext(4); // 4 precision
      
            // assign value to num
            num = new BigDecimal("78.6714");
      
            // assign negate value of num to negv using mc
            negv = num.negate(mc);
            System.out.println("Negated value, rounded to 4"+
            " precision " + negv);
        }
    }

    chevron_right

    
    

    Output:

    Negated value, rounded to 4 precision -78.67
    

    Program 2

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java program to demonstrate negate(MathContext mc) method
    import java.math.*;
      
    public class GFG {
      
        public static void main(String[] args)
        {
      
            // create 2 BigDecimal objects
            BigDecimal num, negv;
      
            MathContext mc = new MathContext(12); // 12 precision
      
            // assign value to num
            num = new BigDecimal("-178901456.68431");
      
            // assign negate value of num to negv using mc
            negv = num.negate(mc);
            System.out.println("Negated value, rounded to 12 "+
            "precision " + negv);
        }
    }

    chevron_right

    
    

    Output:

    Negated value, rounded to 12 precision 178901456.684
    
  3. Reference:
    https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#negate()

    Attention reader! Don’t stop learning now. Get hold of all the important Java and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.




    My Personal Notes arrow_drop_up


    If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

    Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.