-1
10^9尺寸數組正在顯示以下錯誤:如何聲明在Java
"Exception in thread "main" java.lang.OutOfMemoryError: Java heap space"
當我聲明:
long[] ar = new long[1000000000];
那麼如何聲明一個數組,其大小爲10^9 ?
10^9尺寸數組正在顯示以下錯誤:如何聲明在Java
"Exception in thread "main" java.lang.OutOfMemoryError: Java heap space"
當我聲明:
long[] ar = new long[1000000000];
那麼如何聲明一個數組,其大小爲10^9 ?
要創建一個10億8字節的數組long
值,您需要至少8 GB的舊版本的可用內存。如果你有足夠的內存開始32 GB,我建議給堆至少12 GB。
如果你沒有這麼多的內存,你可以在Linux上使用內存映射文件,但很可能存在更有效的內存存儲方式(取決於你爲什麼試圖這樣做)
我認爲答案是,不要試圖宣佈一個需要更多內存的可笑的大陣列,無論你認爲你需要它,可能找到另一種方式來做到這一點。 – khelwood
這聽起來像是[X Y問題](http://meta.stackexchange.com/a/66378/286538)。你可能應該編輯問題並解釋你想解決的實際問題。 – RealSkeptic
創建一個這種大小的數組的目的是什麼,特別是用longs。這隻會讓一切變得更糟。 – Ungeheuer