c++和java中map对象的最大大小是多少?

use*_*293 5 c++ java hashmap

c++和java中hashmap/map对象的最大大小是多少?我想使用 hashmap,但我正在处理大量数据。我担心如果我在大数据上使用它,它可能会因为容量限制而崩溃。是这样吗?如果是这样,替代方法是什么?

Fre*_*Foo 6

在 Java 中,size()aHashMap的类型为int,因此映射中有 2^31-1 个元素的上限。

在 C++ 中,map::max_size返回最大值。元素的数量。在 vanilla 中map,最多有一个SIZE_T_MAX元素的上限,在现代硬件上是 2^64-1。


Pub*_*bby 2

在C++中,std::map有一个max_size()成员函数(对应于它可以保存的数据量)。

sizeof(std::map<...>)将为您提供实际对象的大小(对应于实际对象的大小,而不是它所保存的数据)。