Java - NegativeArraySizeException



The NegativeArraySizeException in Java occurs when an attempt is made to create an array with a negative size. This is a runtime exception.

Following is the reason when JVM throws a NegativeArraySizeException in Java:

  • When an attempt is made to create an array with a negative size, JVM throws a NegativeArraySizeException.

Methods of NegativeArraySizeException

There are some methods of NegativeArraySizeException class:

Method Description
getMessage() It is used to return the message of the exception.
toString() It is used to return the detail message string of the exception.
printStackTrace() It is used to print the stack trace of the exception.

Example of NegativeArraySizeException

In this example, we are creating an array with a negative size, so JVM will throw a NegativeArraySizeException.

public class NegativeArraySizeExceptionExample {
   public static void main(String[] args) {
      int[] arr = new int[-5];
   }
}

Output

Following is the output of the above code:

Exception in thread "main" java.lang.NegativeArraySizeException
   at NegativeArraySizeExceptionExample.main(NegativeArraySizeExceptionExample.java:3)

As you can see in the output, JVM throws a NegativeArraySizeException because we are creating an array with a negative size.

Handling NegativeArraySizeException

In this example, we are creating an array with a negative size, so JVM will throw a NegativeArraySizeException. We are handling this exception using a try-catch block.

public class NegativeArraySizeExceptionExample {
   public static void main(String[] args) {
      try {
         int[] arr = new int[-5];
      } catch (NegativeArraySizeException e) {
         System.out.println("Array size should be non-negative");
      }
   }
}

Output

Following is the output of the above code:

Array size should be non-negative

How to avoid NegativeArraySizeException?

To avoid a NegativeArraySizeException, you should always create an array with a non-negative size.

java_lang_exceptions.htm
Advertisements