4

整数データ型でサポートされている長さよりも長い配列をJavaで取得する方法はありますか?

ネイティブでサポートされている配列の長さが、実装しているアルゴリズムに必要なほど大きくないため、Java で大きな整数を使用してインデックス付けできるものを探しています。

4

3 に答える 3

4

このライブラリはあなたに役立つはずです:http://fastutil.dsi.unimi.it/

それは言う:

「...大きな(64ビット)アレイも提供します...」

于 2013-01-19T17:08:17.797 に答える
3

Int32は、178ギガバイトのストレージを提供します。たくさんの記憶がありますか?

スパース配列、つまりハッシュによるインデックス要素を使用する必要があると思います。たとえば、HashMap<BigInteger,YourValueType>BigMemoryや代替のhttp://terracotta.org/products/bigmemoryのようないくつかのライブラリだけで

于 2013-01-19T17:08:15.353 に答える
2

アルゴリズムを変更する必要はありませんか?Integer.MAXはに等しく2^31-1、2147483647であり、それぞれintに4バイトがあり、8589934588バイトのメモリ(8GB !!!)が得られます。

于 2013-01-19T17:07:39.090 に答える