Java中的 BigDecimal abs() 方法
- Java.math.BigDecimal.abs()用于返回 BigDecimal,其值为 BigDecimal 的绝对值,其标度为 this.scale()。
句法 :
public BigDecimal abs()
参数:该方法不接受任何参数。
返回值:返回一个BigDecimal,它的值是这个BigDecimal的绝对值 scale is 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
节目二
// 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
- Java.math.BigDecimal.abs(MathContext mc)返回一个 BigDecimal,其值是根据MathContext类对象mc指定的精度设置四舍五入得到的 BigDecimal 的绝对值。
句法:
public BigDecimal abs(MathContext mc)
参数:该函数仅接受 MathContext 类对象的一个参数mc ,该参数指定用于四舍五入 BigDecimal 的精度设置。
返回值:返回一个 BigDecimal,其值是根据对象mc指定的精度设置四舍五入获得的此 BigDecimal 的绝对值。
异常:如果结果不准确但舍入模式为 UNNECESSARY,则该方法抛出ArithmeticException 。
下面的程序说明了Java.math.BigDecimal.abs() 方法与指定的 MathContext 的使用:
程序 1import 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
节目二
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: Java/math/BigDecimal.html#abs()