The GNU Trove library has two objectives:
Provide free (as in free speech and free beer), fast, lightweight implementations of the java.util Collections API. These implementations are designed to be pluggable replacements for their JDK equivalents.
Whenever possible, provide the same collections support for primitive types. This gap in the JDK is often addressed by using the wrapper classes (java.lang.Integer, java.lang.Float, etc.) with Object-based collections. For most applications, however, collections which store primitives directly will require less space and yield significant performance gains.