1. 程式人生 > >Java異常-OutOfMemoryError: Requested array size exceeds VM limit

Java異常-OutOfMemoryError: Requested array size exceeds VM limit

java.lang.OutOfMemoryError: Requested array size exceeds VM limit

JVM對陣列長度的有限制,超過這個限制則會出現這個錯誤。

解決方案(僅供參考)

例如我們構造了一個數組

Object[] array = new Object[Integer.MAX_VALUE];

這樣執行這句程式碼是會出錯的。將其改造成

Object[] array1 = new Object[Integer.MAX_VALUE/2];
Object[] array2 = new Object[Integer.MAX_VALUE -
Integer.MAX_VALUE/2];

將一個數組拆分成多個數組即可。