java.math.BigDecimal.byteValueExact()是一個內置函數,它將BigDecimal轉換為字節並檢查丟失的信息。任何大於127或小於-128的BigDecimal值都將生成異常,因為它不適合字節範圍。
用法:
public byte byteValueExact()
參數:該方法不接受任何參數。
返回值:此方法返回BigDecimal對象的字節值。
異常:如果BigDecimal具有非零小數部分(即十進製值)或超出字節結果的可能範圍,則此函數引發ArithmeticException。
例子:
Input : 127 Output : 127 Input : -67 Output : -67
下麵的程序將說明byteValueExact()函數的用法:
示例1:
// Java program to demonstrate byteValueExact() method
import java.io.*;
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// Creating a BigDecimal object
BigDecimal b;
// Creating a byte objects
byte bt;
b = new BigDecimal("47");
// Assigning the byte value of b to bt
bt = b.byteValueExact();
// Displaying the byte value
System.out.println("Exact byte value of " + b + " is " + bt);
}
}
輸出:
Exact byte value of 47 is 47
示例2:
// Java program to demonstrate byteValueExact() method
import java.io.*;
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// Creating a BigDecimal object
BigDecimal b;
b = new BigDecimal("-128.0564000");
System.out.println("BigDecimal value : " + b);
long roundedValue = Math.round(b.doubleValue());
System.out.println("Rounded value : " + roundedValue);
// Rounding is necessary as the fractional part is not zero
// as well as exceeding the byte range of -128 to 127
b = new BigDecimal(roundedValue);
System.out.println("Byte converted value : " + b.byteValueExact());
}
}
輸出:
BigDecimal value : -128.0564000 Rounded value : -128 Byte converted value : -128
參考:https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#byteValueExact()
相關用法
- Java 8 BigInteger byteValueExact()用法及代碼示例
- Java BigDecimal ulp()用法及代碼示例
- Java BigDecimal plus()用法及代碼示例
- Java BigDecimal abs()用法及代碼示例
- Java BigDecimal min()用法及代碼示例
- Java BigDecimal max()用法及代碼示例
- Java BigDecimal longValue()用法及代碼示例
- Java BigDecimal doubleValue()用法及代碼示例
- Java BigDecimal toBigIntegerExact()用法及代碼示例
- Java BigDecimal toBigInteger()用法及代碼示例
- Java BigDecimal equals()用法及代碼示例
- Java BigDecimal shortValueExact()用法及代碼示例
- Java BigDecimal signum()用法及代碼示例
- Java BigDecimal pow()用法及代碼示例
- Java BigDecimal stripTrailingZeros()用法及代碼示例
注:本文由純淨天空篩選整理自RICHIK BHATTACHARJEE大神的英文原創作品 BigDecimal byteValueExact() Method in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。