A
Ajax
Aspect-Oriented
 
B
Bloggers
Build Systems
Business Intelligence
ByteCode
 
C
CMS
Cache Solutions
Charting & Reporting
Chat Servers
Code Analyzers
Code Beautifiers
Code Coverage
Collections
Command Line
Connection Pools
Crawlers
 
D
Databases
 
E
EJB Servers
ERP & CRM
ESB
Eclipse Plugins
Expression Languages
 
F
Financial Soft
Forum Soft
 
G
General Purpose
Geospatial
Groupware
 
H
HTML Parsers
 
I
IDEs
Installers
Inversion of Control
Issue Tracking
 
J
J2EE Frameworks
JDBC
JMS
JMX
JSP Tag Libraries
Job Schedulers
 
L
Localization
Logging Tools
 
M
Mail Clients
 
N
Network Clients
Network Servers
 
O
Obfuscators
 
P
PDF Libraries
Parser Generators
Persistence
Portals
Profilers
Project Management
 
R
RSS & RDF Tools
Rule Engines
 
S
SQL Clients
Scripting Languages
Search Engines
Security
Source Control
Swing
 
T
Template Engines
Testing Tools
Text Processing
 
U
UML & Modeling
 
V
Validation
 
W
Web Frameworks
Web Mail
Web Servers
Web Services
Web Testing
Wiki Engines
Workflow Engines
 
X
XML Parsers
XML UI Toolkits
 

Open Source Collections Libraries in Java

Commons Collections

Commons-Collections seek to build upon the JDK classes by providing new interfaces, implementations and utilities. There are many features, including:

 * Bag interface for collections that have a number of copies of each object
 * Buffer interface for collections that have a well defined removal order, like FIFOs
 * BidiMap interface for maps that can be looked up from value to key as well and key to value
 * MapIterator interface to provide simple and quick iteration over maps
 * Type checking decorators to ensure that only instances of a certain type can be added
 * Transforming decorators that alter each object as it is added to the collection
 * Composite collections that make multiple collections look like one
 * Ordered maps and sets that retain the order elements are added in, including an LRU based map
 * Identity map that compares objects based on their identity (==) instead of the equals method
 * Reference map that allows keys and/or values to be garbage collected under close control
 * Many comparator implementations
 * Many iterator implementations
 * Adapter classes from array and enumerations to collections
 * Utilities to test or create typical set-theory properties of collections such as union, intersection, and closure

Go To Commons Collections

Commons Primitives

Apache Jakarta Commons Primitives provides a collection of types and utilities optimized for working with Java primitives (boolean, byte, char, double, float, int, long, short). Generally, the Commons-Primitives classes are smaller, faster and easier to work with than their purely Object based alternatives.

Go To Commons Primitives



FastUtil

fastutil extends the Java Collections Framework by providing type-specific maps, sets, lists and queues with a small memory footprint and fast access and insertion.

Go To FastUtil

google-collections

The Google Collections Library is a suite of new collections and collection-related goodness for Java 5.0. This library is a natural extension of the Java Collections Framework. The major new types are:

 * BiMap. A Map that guarantees unique values, and supports an inverse view.
 * Multiset. A Collection that may contain duplicate values like a List, yet has order-independent equality like a Set. Often used to represent a histogram.
 * Multimap. Similar to Map, but may contain duplicate keys. Has subtypes SetMultimap and ListMultimap providing more specific behavior.

Go To google-collections

Trove

Trove provides a "free", fast, lightweight implementations of the java.util Collections API. These implementations are designed to be pluggable replacements for their JDK equivalents.

Go To Trove

Mango

Mango is a Java library consisting of a number of iterators, algorithms and functions, loosely inspired by the C++ Standard Template Library.

Go To Mango

PCJ

Primitive Collections for Java (PCJ) is a set of collection classes for primitive data types in Java. The goal is to provide an efficient alternative to the Java Collections Framework (JCF) when using primitive data types, such as int, boolean, or double.

Go To PCJ

tclib

tclib - Type-Specific Collections Library.

Go To tclib







Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries. This site is independent of Sun Microsystems, Inc.