trove4j是一个高性能的Java集合库,在服务端和客户端工作更快,使用更少的内存。

  官方网站:http://trove.starlight-systems.com/


  1.快速,轻量的实现了java.util.Collections API,可以与JDK中的集合框架等价使用。 

  2.提供了基本类型如char,int,byte,float,double等的集合操作,避免基本类型的在集合操作中的包装,极大减少内存使用。


   熟悉java.util.Collections API的话,使用trove4j是非常容易的。下面截取trove4j的int类型java.util.Collections的实现类图。


   

wKiom1aQx2DwA5loAABcvM0Z1rs634.png


  wKioL1aQx6mDAPYoAABuGy-hQGs212.png


  

   同上上图可以看到int类型集合框架实现有List,Set,Stack,Queue,还有<K,V>为<int,Object>,<Object,int> 的Map 。同时具有线程安全和不可修改集合的实现。对于其他primitive都用同样的实现。

   通常在对primitive类型的数据操作时,面对各种数据结构,如List,不可避免的要进行boxing,而trove的实现是直接存储primitive类型的数据,这会极大降低内存使用。

  

    参考:reducing-memory-consumption-by-20x 译文