java.math.BigDecimal.divideToIntegralValue(BigDecimal divisor)用于计算四舍五入的两个BigDecimals(this /divisor)商的整数部分。结果的首选标度是(this.scale() – divisor.scale())。此方法对当前的BigDecimal进行操作,调用该方法并将BigDecimal作为参数传递。
Java中提供了divideToIntegralValue方法的两个重载,如下所示:
- splitToIntegralValue(BigDecimal divisor)
- splitToIntegralValue(BigDecimal divisor,MathContext mc)
divideToIntegralValue(BigDecimal divisor)
用法:
public BigDecimal divideToIntegralValue(BigDecimal divisor)
参数:此方法接受参数除数,该BigDecimal将被该参数除。
返回值:此方法返回保存结果的整数部分的BigDecimal(这个/除数)。
异常:参数除数必须不0除此以外算术异常被抛出。
下面的程序用于说明BigDecimal的divideToIntegralValue()方法。
// Java program to demonstrate
// divideToIntegralValue() method of BigDecimal
import java.math.BigDecimal;
public class GFG {
public static void main(String[] args)
{
// BigDecimal object to store the result
BigDecimal res;
// For user input
// Use Scanner or BufferedReader
// Two objects of String created
// Holds the values
String input1
= "31452678569";
String input2
= "2468";
// Convert the string input to BigDecimal
BigDecimal a
= new BigDecimal(input1);
BigDecimal divisor
= new BigDecimal(input2);
// Using divideToIntegralValue() method
res = a.divideToIntegralValue(divisor);
// Display the result in BigDecimal
System.out.println(res);
}
}
12744197
divideToIntegralValue(BigDecimal divisor, MathContext mc)
由于精确商的整数部分不取决于舍入模式,因此舍入模式不会影响此方法返回的值。结果的首选标度是(this.scale() – divisor.scale())。
用法:
public BigDecimal divideToIntegralValue(BigDecimal divisor, MathContext mc)
参数:此方法接受一个参数除数,该BigDecimal将被该参数除数,并且接受用于上下文设置的MathContext类型的参数mc。
返回值:此方法返回保存结果的整数部分的BigDecimal(这个/除数)。
异常:方法抛出算术异常对于以下条件:
- 参数除数不得为0。
- 如果mc.precision> 0,结果要求的精度超过mc.precision位数。
下面的程序用于说明BigDecimal的divideToIntegralValue()方法。
示例1:
// Java program to demonstrate
// divideToIntegralValue() method of BigDecimal
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// BigDecimal object to store the result
BigDecimal res;
// For user input
// Use Scanner or BufferedReader
// Two objects of String created
// Holds the values
String input1
= "24536482";
String input2
= "2";
// Convert the string input to BigDecimal
BigDecimal a
= new BigDecimal(input1);
BigDecimal divisor
= new BigDecimal(input2);
// Set precision to 10
MathContext mc
= new MathContext(10);
// Using divideToIntegralValue() method
res = a.divideToIntegralValue(divisor, mc);
// Display the result in BigDecimal
System.out.println(res);
}
}
12268241
示例2:程序说明了divideToIntegralValue()方法中发生异常的程序
// Java program to demonstrate
// divideToIntegralValue() method of BigDecimal
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// BigDecimal object to store the result
BigDecimal res;
// For user input
// Use Scanner or BufferedReader
// Two objects of String created
// Holds the values
String input1
= "24536482";
String input2
= "2";
// Convert the string input to BigDecimal
BigDecimal a
= new BigDecimal(input1);
BigDecimal divisor
= new BigDecimal(input2);
// Set precision to 5
MathContext mc
= new MathContext(5);
// As the result requires
// a precision of more than
// mc.precision digits
// So Exception occur
try {
// Using divideToIntegralValue() method
res = a.divideToIntegralValue(divisor, mc);
// Display the result in BigDecimal
System.out.println(res);
}
catch (ArithmeticException e) {
System.out.println(e);
}
}
}
java.lang.ArithmeticException: Division impossible
相关用法
- Java BigDecimal add()用法及代码示例
- Java BigDecimal pow()用法及代码示例
- Java BigDecimal setScale()用法及代码示例
- Java BigDecimal remainder()用法及代码示例
- Java BigDecimal sqrt()用法及代码示例
- Java BigDecimal toPlainString()用法及代码示例
- Java BigDecimal toEngineeringString()用法及代码示例
- Java BigDecimal divideAndRemainder()用法及代码示例
- Java BigDecimal subtract()用法及代码示例
- Java BigDecimal floatValue()用法及代码示例
- Java BigDecimal toString()用法及代码示例
- Java BigDecimal divide()用法及代码示例
- Java BigDecimal min()用法及代码示例
- Java BigDecimal plus()用法及代码示例
- Java BigDecimal max()用法及代码示例
注:本文由纯净天空筛选整理自Rajnis09大神的英文原创作品 BigDecimal divideToIntegralValue() Method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。