Java.math.BigDecimal.byteValueExact()方法
java.math.BigDecimal.byteValueExact() 轉換將BigDecimal爲一個字節,檢查丟失的信息。如果此BigDecimal具有非零小數部分,或者超出的可能範圍,字節的結果則拋出ArithmeticException。
聲明
以下是java.math.BigDecimal.byteValueExact()方法的聲明
public byte byteValueExact()
參數
- NA
返回值
此方法返回的BigDecimal對象的字節值。
Exception
- ArithmeticException - 如果BigDecimal對象的具有非零小數部分,或者不適合以字節形式。
例子
下面的示例演示math.BigDecimal.byteValueExact()方法的用法。
package com.yiibai; import java.math.*; public class BigDecimalDemo { public static void main(String[] args) { // create 2 BigDecimal objects BigDecimal bg1, bg2; // Create 2 byte objects byte i1, i2; // assign values to bg1 and bg2 bg1 = new BigDecimal("-128"); bg2 = new BigDecimal("48"); // any BigDecimal value greater than 127 or less than -128, // will generate exception as it doesn't fit in byte range // this method also generates exception for decimal values like 12.10 // assign the byte value of bg1 and bg2 to i1,i2 respectively i1 = bg1.byteValueExact(); i2 = bg2.byteValueExact(); String str1 = "Exact byte value of " + bg1 + " is " + i1; String str2 = "Exact byte value of " + bg2 + " is " + i2; // print i1,i2 values System.out.println( str1 ); System.out.println( str2 ); } }
讓我們編譯和運行上面的程序,這將產生以下結果:
Exact byte value of -128 is -128 Exact byte value of 48 is 48