Eclipse Collections is a comprehensive collections library for Java. The library enables productivity and performance by delivering an expressive and efficient set of APIs and types. The iteration protocol was inspired by the Smalltalk collection framework, and the collections are compatible with the Java Collection Framework types.
Eclipse Collections is compatible with Java 8+. Eclipse Collections is a part of the OpenJDK Quality Outreach program, and it is validated for different versions of the OpenJDK.
Why Eclipse Collections?
- Productivity
- Rich, functional, and fluent APIs with great symmetry
List
, Set
, Bag
, Stack
, Map
, Multimap
, BiMap
, Interval
Types- Readable,
Mutable
, and Immutable
Types - Mutable and Immutable Collection Factories
- Adapters and Utility classes for JCF Types
- Performance
- Memory Efficient Containers
- Optimized Eager,
Lazy
and Parallel
APIs - Primitive Collections for all primitive types
Learn Eclipse Collections
- Some Quick Code Examples
- Eclipse Collections Katas, a fun way to help you learn idiomatic Eclipse Collections usage.
- Eclipse Collections Reference Guide and Javadoc
- Serializing Eclipse Collections with Jackson
- Articles and Blogs
- Some OSS projects that use Eclipse Collections
- Neo4J, FINOS Legend, Reladomo, Liftwizard, Exchange Core, Dataframe EC, MapDB, Code Browser, Obevo, BNY Mellon Code Katas, Eclipse Nebula NatTable, Eclipse VIATRA, Jackson Datatypes Collections
- If you work on an open source project that uses Eclipse Collections, let us know!
Eclipse Collections and JDK Compatibility Matrix
Acquiring Eclipse Collections
Maven
<dependency>
<groupId>org.eclipse.collections</groupId>
<artifactId>eclipse-collections-api</artifactId>
<version>11.1.0</version>
</dependency>
<dependency>
<groupId>org.eclipse.collections</groupId>
<artifactId>eclipse-collections</artifactId>
<version>11.1.0</version>
</dependency>
Gradle
implementation 'org.eclipse.collections:eclipse-collections-api:11.1.0'
implementation 'org.eclipse.collections:eclipse-collections:11.1.0'
OSGi Bundle
Eclipse software repository location: https://download.eclipse.org/collections/11.1.0/repository
How to Contribute
We welcome contributions! We accept contributions via pull requests here in GitHub. Please see How To Contribute to get started.
Additional information