Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

mostlymagic/functional-java-collections

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

A functional replacement for parts of the Java Collections library.

All implementations must be immutable and provide fluent interfaces to create modified versions.

Currently the interfaces supported are:

- Gathering (equivalent to Collection)
- Series (equivalent to List)

Two implementations exist:

- ArraySeries (equivalent to ArrayList)
- HeadTailSeries (equivalent to the lists found in functional Languages)

Sample code:

    final Series<Integer> original = ArraySeries.of(3, 4, 5);
    final Series<Integer> clone =
        original
            .prependArray(1, 2)
            .appendArray(9, 10)
            .insertCollection(5, Arrays.asList(6, 7, 8))
            .removeGathering(ArraySeries.of(6, 7, 8))
            .removeArray(9, 10)
            .deleteItems(0, 1);
    assertEquals(original, clone);

About

Immutable Java Collections with functional fluent interfaces

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.