A library enhancing the JRE with the core functionality it should have had for a long time.
The core ideas are:
java.util.List
and the util
-Collection-API just stay alive because of its wide spread not its qualitycontains(Object)
and such)null
is avoided as far as possible - it is not considered as a valid value (e.g. as a collection's element)Comparable
is not a satisfactory solution)Iterator
/ Iterable
is badly designed and needs a replacement (there is a 'legacy' support to integrate in common frameworks anyway)'jadamant' is a made-up word conbined out of 'Java' and 'Adamant'. Inspired by the Master of Orion II Adamantium plating. Adamant symbolises the immutable solid character and thereby the philosophy of this project.
The 0.1 beta is planed to be released somewhen 2012. Until then there might be major changes to the API. But the core collection API is nearly stable pretty much done implemented and covered with tests.
Feal free to contact me and get to know more about the current state.
Iterable
~ this concept got replaced tooList
s are the basic collection (there is no Collection
-type)List
s consists of a chain of partial List
sBag
is literally a Sorted``List
Set
is literally a special Bag
(and therefore a List
too) with a unique constraint Map
is literally a Set
of Entry
s, so it's a Bag
too... and a List
... and...Multimap
(a Bag
of Entry
s) or a map with a list of values for each keyThis migth sound unfamiliar for a moment. Hopefully there will be a lot of examples soon to show why this is the better approch.
// list construction
List.with.noElements(); // a empty list
List.with.element(1); // a list with a single element - the integer 1
List.with.elements(1,2,3,4); // a list holding the numbers 1 to 4
to be continued...
You should have a look to the unit-tests in the de.jbee.lang
and de.jbee.lang.seq
package to see the current API in use.