适应容量的Java集合
是否有用于映射和集合的Java库根据容量改变其表示策略?我有一个应用程序,我们有很多地图和集合,但大多数时候它们都很小,通常只有6个元素或更少 因此,我们已经能够通过编写一些专门的映射和集来提取一些好的内存改进,这些映射和集只使用数组来处理较小的大小,然后默认使用标准Java集和映射来处理较大的容量适应容量的Java集合,java,memory,collections,map,set,Java,Memory,Collections,Map,Set,是否有用于映射和集合的Java库根据容量改变其表示策略?我有一个应用程序,我们有很多地图和集合,但大多数时候它们都很小,通常只有6个元素或更少 因此,我们已经能够通过编写一些专门的映射和集来提取一些好的内存改进,这些映射和集只使用数组来处理较小的大小,然后默认使用标准Java集和映射来处理较大的容量 然而,如果已经有现成的东西,那么推出我们自己的特殊版本的集合和地图似乎有点愚蠢。我看过番石榴和Apache系列,它们似乎没有提供这样的产品。Trove听起来比JDK的集合总体上更具内存效率,但目前还
然而,如果已经有现成的东西,那么推出我们自己的特殊版本的集合和地图似乎有点愚蠢。我看过番石榴和Apache系列,它们似乎没有提供这样的产品。Trove听起来比JDK的集合总体上更具内存效率,但目前还不清楚它是否会像这样尝试最小化内存使用。您可能想看看持久数据结构。虽然“持久性”部分对你来说可能有些过分,但它确实满足了你的需求,而且仍然非常快。一旦收藏超过16个实体,就会有一个被提升为的库。我不知道有这样的库 问题在于,使用最少内存量的表示往往:
- 与Java Collections API不兼容,这使得集成变得困难,并且
- 打破抽象界限;e、 g.通过向元素类型添加链接字段