映射条目高于Integer.MAX_VALUE

时间:2018-06-25 08:48:26

标签: java chronicle-map

我正在处理大量小物件。我正在使用ChronicleMap,效果非常好。

地图条目的最大数量是否限制为Integer.MAX_VALUE

如果不是,那么如果条目数大于map.size(),如何在Integer.MAX_VALUE返回Integer.MAX_VALUE的情况下获取地图的实际大小?

谢谢。

2 个答案:

答案 0 :(得分:5)

您可以使用ChronicleMap.longSize来代替long。如果每个来源的大小大于Integer.MAX_VALUEChronicleMap.size将返回Integer.MAX_VALUEhttps://github.com/OpenHFT/Chronicle-Map/blob/master/src/main/java/net/openhft/chronicle/hash/impl/VanillaChronicleHash.java#L707

这符合Collection.size界面:

  

返回此集合中的元素数。如果这个集合   包含超过Integer.MAX_VALUE个元素,返回   整数。MAX_VALUE。

答案 1 :(得分:2)

ChronicleMap的大小不限于integer.MAX_VALUE作为传统地图。要获取大小,您可以使用longSize()来返回长值