📜  Java中的 BigDecimal Subtract() 方法及示例

📅  最后修改于: 2022-05-13 01:55:37.620000             🧑  作者: Mango

Java中的 BigDecimal Subtract() 方法及示例

Java.math.BigDecimal .subtract(BigDecimal val)用于计算两个 BigDecimal 的算术差异。该方法用于在不影响结果精度的情况下求大数的算术差异。此方法对调用此方法的当前 BigDecimal 执行操作,并将 BigDecimal 作为参数传递。

Java中有两个可用的subtract方法重载,如下所示:

  • 减法(BigDecimal val)
  • 减法(BigDecimal val,MathContext mc)

减法(BigDecimal val)

句法:

public BigDecimal subtract(BigDecimal val)

参数:此方法接受参数val ,该参数是要从此 BigDecimal 中减去的值。

返回值:该方法返回一个BigDecimal,它保存了差异(this - val),其比例为max(this.scale(),val.scale())。

下面的程序用于说明 BigDecimal 的减法()方法。

// Java program to demonstrate
// subtract() method of BigDecimal
  
import java.math.BigDecimal;
  
public class GFG {
    public static void main(String[] args)
    {
        // BigDecimal object to store result
        BigDecimal diff;
  
        // For user input
        // Use Scanner or BufferedReader
  
        // Two objects of String created
        // Holds the values to calculate the difference
        String input1
            = "545456468445645468464645";
        String input2
            = "425645648446468486486452";
  
        // Convert the string input to BigDecimal
        BigDecimal a
            = new BigDecimal(input1);
        BigDecimal b
            = new BigDecimal(input2);
  
        // Using subtract() method
        diff = a.subtract(b);
  
        // Display the result in BigDecimal
        System.out.println("The difference of\n"
                           + a + " \nand\n" + b + " "
                           + "\nis\n" + diff + "\n");
    }
}

输出:

减法(BigDecimal val,MathContext mc)

句法:

public BigDecimal subtract(BigDecimal val, MathContext mc)

参数:此方法接受两个参数,一个是val ,它是要从此 BigDecimal 中减去的值,另一个是 MathContext 类型的mc

返回值:此方法返回一个 BigDecimal,其中包含差异(this - val),并根据上下文设置进行舍入。

下面的程序用于说明 BigDecimal 的减法()方法。

// Java program to demonstrate
// subtract() method of BigDecimal
  
import java.math.*;
  
public class GFG {
    public static void main(String[] args)
    {
        // BigDecimal object to store result
        BigDecimal diff;
  
        // For user input
        // Use Scanner or BufferedReader
  
        // Two objects of String created
        // Holds the values to calculate the difference
        String input1
            = "468445645468464645";
        String input2
            = "4256456484464684864864";
  
        // Convert the string input to BigDecimal
        BigDecimal a
            = new BigDecimal(input1);
        BigDecimal b
            = new BigDecimal(input2);
  
        // Set precision to 10
        MathContext mc
            = new MathContext(10);
        // Using subtract() method
        diff = a.subtract(b, mc);
  
        // Display the result in BigDecimal
        System.out.println("The difference of\n"
                           + a + " \nand\n" + b + " "
                           + "\nis\n" + diff + "\n");
    }
}

输出:

参考资料: https: Java Java.math.BigDecimal)