जब किसी वैरिएबल को मान असाइन किया जाता है जो न्यूनतम अनुमत मान से कम है उस चर के लिए, तब एक अंडरफ़्लो होता है . JVM . द्वारा कोई अपवाद नहीं फेंका गया है अगर जावा में अंडरफ्लो होता है और अंडरफ्लो की स्थिति को संभालने की जिम्मेदारी प्रोग्रामर की होती है।
उदाहरण
public class UnderlowTest { public static void main(String[] args) { int num1 = -2147483648; int num2 = -1; System.out.println("Number 1: " + num1); System.out.println("Number 2: " + num2); long sum = (long)num1 + (long)num2; if(sum < Integer.MIN_VALUE) { throw new ArithmeticException("Underflow occurred!"); } System.out.println("The sum of two numbers : " + (int)sum); } }
आउटपुट
Number 1: -2147483648 Number 2: -1 Exception in thread "main" java.lang.ArithmeticException: Underflow occurred! at UnderlowTest.main(UnderlowTest.java:9). पर