Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

เราจะตรวจสอบได้อย่างไรว่า underflow เกิดขึ้นใน Java?


เมื่อกำหนดค่าให้กับตัวแปรที่ น้อยกว่าค่าต่ำสุดที่อนุญาต สำหรับตัวแปรนั้น อันเดอร์โฟลว์ก็เกิดขึ้น . ไม่มีข้อยกเว้นจาก JVM หากเกิดอันเดอร์โฟลว์ใน Java และเป็นความรับผิดชอบของโปรแกรมเมอร์ในการจัดการกับสภาวะอันเดอร์โฟลว์

ตัวอย่าง

<ก่อน> คลาสสาธารณะ UnderlowTest { โมฆะคงที่สาธารณะหลัก (สตริง [] args) { int num1 =-2147483648; int num2 =-1; System.out.println("หมายเลข 1:" + num1); System.out.println("หมายเลข 2:" + num2); ผลรวมยาว =(ยาว)num1 + (ยาว)num2; if(sum new ArithmeticException("เกิดอันเดอร์โฟลว์!"); } System.out.println("ผลรวมของตัวเลขสองตัว :" + (int)sum); }}

ผลลัพธ์

หมายเลข 1:-2147483648Number 2:-1Exception ในเธรด "main" java.lang.ArithmeticException:Underflow เกิดขึ้น! ที่ UnderlowTest.main(UnderlowTest.java:9)