API: ISet
ISet is the interface for collections of unique elements, analogous to java.util.Set.
Key Methods
ISet<V> add(V value)
Returns a new set containing the specified value. If the value is already present, it returns an identical set.
ISet<V> remove(V value)
Returns a new set that does not contain the specified value.
boolean contains(V value)
Returns true if the set contains the specified value.
ISet<V> union(ISet<V> set)
Returns a new set containing all elements from this set and the other set.
ISet<V> difference(ISet<V> set)
Returns a new set containing elements that are in this set but not in the other set.
ISet<V> intersection(ISet<V> set)
Returns a new set containing only the elements that are present in both sets.
IList<V> elements()
Returns a list view of the elements in the set.
<U> IMap<V, U> zip(Function<V, U> f)
Returns a map where each element in the set is a key, and the corresponding value is computed by the provided function f.
API: ISortedSet
ISortedSet extends ISet for sets that maintain their elements in a sorted order.
Additional Methods
Comparator<V> comparator()
Returns the Comparator used to order the elements.
V floor(V value)
Returns the greatest element in this set less than or equal to the given value, or null if there is no such element.
V ceil(V value)
Returns the least element in this set greater than or equal to the given value, or null if there is no such element.
V first()
Returns the first element in the sorted set.
V last()
Returns the last element in the sorted set.