Class ImmutableEmptySortedMap<K,V>
java.lang.Object
org.eclipse.collections.impl.AbstractRichIterable<V>
org.eclipse.collections.impl.map.AbstractMapIterable<K,V>
org.eclipse.collections.impl.map.sorted.immutable.AbstractImmutableSortedMap<K,V>
org.eclipse.collections.impl.map.sorted.immutable.ImmutableEmptySortedMap<K,V>
- All Implemented Interfaces:
Serializable
,Iterable<V>
,Map<K,
,V> SequencedMap<K,
,V> SortedMap<K,
,V> InternalIterable<V>
,ImmutableMapIterable<K,
,V> MapIterable<K,
,V> ImmutableSortedMap<K,
,V> SortedMapIterable<K,
,V> OrderedIterable<V>
,ReversibleIterable<V>
,RichIterable<V>
final class ImmutableEmptySortedMap<K,V>
extends AbstractImmutableSortedMap<K,V>
implements Serializable
This is a zero element
ImmutableSortedMap
which is created by calling SortedMaps.immutable.empty().-
Nested Class Summary
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Comparator
<? super K> (package private) static final ImmutableSortedMap
<?, ?> private static final long
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<K2,
V2> ImmutableMap <K2, V2> For each key and value of the map the function is evaluated.<R> ImmutableSortedMap
<K, R> collectValues
(Function2<? super K, ? super V, ? extends R> function) For each key and value of the map the function is evaluated.Comparator
<? super K> boolean
containsKey
(Object key) boolean
containsValue
(Object value) detect
(Predicate2<? super K, ? super V> predicate) Return the first key and value of the map for which the predicate evaluates to true when they are given as arguments.detectOptional
(Predicate2<? super K, ? super V> predicate) Return the first key and value of the map as an Optional for which the predicate evaluates to true when they are given as arguments.drop
(int count) Returns an iterable after skipping the firstcount
elements or an empty iterable if thecount
is greater than the length of the iterable.entrySet()
boolean
Follows the same general contract asMap.equals(Object)
.firstKey()
Return the MapIterable that is obtained by flipping the direction of this map and making the associations from value to key.void
forEachKey
(Procedure<? super K> procedure) Calls theprocedure
with each key of the map.void
forEachKeyValue
(Procedure2<? super K, ? super V> procedure) Calls theprocedure
with each key-value pair of the map.void
forEachValue
(Procedure<? super V> procedure) Calls the procedure with each value of the map.<P> void
forEachWith
(Procedure2<? super V, ? super P> procedure, P parameter) The procedure2 is evaluated for each element in the iterable with the specified parameter provided as the second argument.void
forEachWithIndex
(ObjectIntProcedure<? super V> objectIntProcedure) Iterates over the iterable passing each element and the current relative int index to the specified instance of ObjectIntProcedure.getIfAbsent
(K key, Function0<? extends V> function) Return the value in the Map that corresponds to the specified key, or if there is no value at the key, return the result of evaluating the specified Function0.getIfAbsentValue
(K key, V value) Return the value in the Map that corresponds to the specified key, or if there is no value at the key, returnvalue
.<P> V
getIfAbsentWith
(K key, Function<? super P, ? extends V> function, P parameter) Return the value in the Map that corresponds to the specified key, or if there is no value at the key, return the result of evaluating the specified function and parameter.getOnly()
Returns the element if the iterable has exactly one element.int
hashCode()
Follows the same general contract asMap.hashCode()
.<A> A
ifPresentApply
(K key, Function<? super V, ? extends A> function) If there is a value in the Map that corresponds to the specified key return the result of applying the specified Function on the value, otherwise return null.boolean
isEmpty()
Returns true if this iterable has zero items.keySet()
keysView()
Returns an unmodifiable lazy iterable wrapped around the keySet for the map.RichIterable
<Pair<K, V>> Returns an unmodifiable lazy iterable of key/value pairs wrapped around the entrySet for the map.lastKey()
boolean
notEmpty()
The English equivalent of !this.isEmpty()reject
(Predicate2<? super K, ? super V> predicate) For each key and value of the map the predicate is evaluated, if the result of the evaluation is false, that key and value are returned in a new map.select
(Predicate2<? super K, ? super V> predicate) For each key and value of the map the predicate is evaluated, if the result of the evaluation is true, that key and value are returned in a new map.int
size()
Returns the number of items in this iterable.take
(int count) Returns the firstcount
elements of the iterable or all the elements in the iterable ifcount
is greater than the length of the iterable.Executes the Procedure for each value of the map and returnsthis
.toString()
Returns a string with the elements of the iterable separated by commas with spaces and enclosed in square brackets.values()
Returns an unmodifiable lazy iterable wrapped around the values for the map.private Object
Methods inherited from class org.eclipse.collections.impl.map.sorted.immutable.AbstractImmutableSortedMap
aggregateBy, asReversed, castToMap, castToSortedMap, clear, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, corresponds, countBy, countByEach, countByWith, detectIndex, detectLastIndex, distinct, dropWhile, flatCollect, flip, forEach, forEachWithIndex, groupBy, groupByEach, groupByUniqueKey, headMap, indexOf, iterator, newWithAllKeyValueArguments, newWithAllKeyValues, newWithKeyValue, newWithMap, newWithMapIterable, newWithoutAllKeys, newWithoutKey, partition, partitionWhile, partitionWith, put, putAll, reject, rejectWith, remove, select, selectInstancesOf, selectWith, subMap, sumByDouble, sumByFloat, sumByInt, sumByLong, tailMap, takeWhile, toImmutable, toReversed, toSortedMap, toStack, zip, zipWithIndex
Methods inherited from class org.eclipse.collections.impl.map.AbstractMapIterable
allSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, asLazy, chunk, contains, detect, detectIfNone, detectOptional, detectWith, detectWithIfNone, detectWithOptional, each, getFirst, getLast, getOrDefault, isAbsent, keyAndValueEquals, keyAndValueHashCode, noneSatisfy, noneSatisfyWith, toArray, toArray
Methods inherited from class org.eclipse.collections.impl.AbstractRichIterable
appendString, appendString, collect, collectIf, collectWith, containsAll, containsAllArguments, containsAllIterable, count, countWith, flatCollect, forEach, groupBy, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, into, max, max, maxBy, min, min, minBy, reject, rejectWith, select, selectWith, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toBag, toBiMap, toList, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedListBy, toSortedMap, toSortedMap, toSortedMapBy, toSortedSet, toSortedSet, toSortedSetBy, zip, zipWithIndex
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.collections.api.map.sorted.ImmutableSortedMap
aggregateBy, aggregateInPlaceBy, collectWithIndex, flatCollectWith
Methods inherited from interface org.eclipse.collections.api.InternalIterable
forEach
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
Methods inherited from interface org.eclipse.collections.api.map.MapIterable
getOrDefault, injectIntoKeyValue, parallelStream, spliterator, stream
Methods inherited from interface org.eclipse.collections.api.ordered.OrderedIterable
collectWithIndex, getFirst, getFirstOptional, getLast, getLastOptional, max, min, rejectWithIndex, selectWithIndex, zip, zipWithIndex
Methods inherited from interface org.eclipse.collections.api.ordered.ReversibleIterable
reverseForEach, reverseForEachWithIndex
Methods inherited from interface org.eclipse.collections.api.RichIterable
aggregateBy, allSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, appendString, appendString, appendString, asLazy, chunk, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, contains, containsAll, containsAllArguments, containsAllIterable, containsAny, containsAnyIterable, containsBy, containsNone, containsNoneIterable, count, countBy, countByEach, countByWith, countWith, detect, detectIfNone, detectOptional, detectWith, detectWithIfNone, detectWithOptional, each, flatCollect, flatCollectBoolean, flatCollectByte, flatCollectChar, flatCollectDouble, flatCollectFloat, flatCollectInt, flatCollectLong, flatCollectShort, flatCollectWith, forEach, getAny, groupBy, groupByAndCollect, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, injectIntoDouble, injectIntoFloat, injectIntoInt, injectIntoLong, into, makeString, makeString, makeString, makeString, max, maxBy, maxByOptional, maxOptional, maxOptional, min, minBy, minByOptional, minOptional, minOptional, noneSatisfy, noneSatisfyWith, reduce, reduceInPlace, reduceInPlace, reject, rejectWith, select, selectWith, summarizeDouble, summarizeFloat, summarizeInt, summarizeLong, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toArray, toArray, toBag, toBiMap, toImmutableBag, toImmutableBiMap, toImmutableList, toImmutableMap, toImmutableSet, toImmutableSortedBag, toImmutableSortedBag, toImmutableSortedBagBy, toImmutableSortedList, toImmutableSortedList, toImmutableSortedListBy, toImmutableSortedSet, toImmutableSortedSet, toImmutableSortedSetBy, toList, toMap, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedList, toSortedList, toSortedListBy, toSortedMap, toSortedMap, toSortedMapBy, toSortedSet, toSortedSet, toSortedSetBy
Methods inherited from interface java.util.SequencedMap
firstEntry, lastEntry, pollFirstEntry, pollLastEntry, sequencedEntrySet, sequencedKeySet, sequencedValues
-
Field Details
-
INSTANCE
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
comparator
-
-
Constructor Details
-
ImmutableEmptySortedMap
ImmutableEmptySortedMap() -
ImmutableEmptySortedMap
ImmutableEmptySortedMap(Comparator<? super K> comparator)
-
-
Method Details
-
size
public int size()Description copied from interface:RichIterable
Returns the number of items in this iterable. -
keysView
Description copied from interface:MapIterable
Returns an unmodifiable lazy iterable wrapped around the keySet for the map.- Specified by:
keysView
in interfaceMapIterable<K,
V>
-
valuesView
Description copied from interface:MapIterable
Returns an unmodifiable lazy iterable wrapped around the values for the map.- Specified by:
valuesView
in interfaceMapIterable<K,
V>
-
keyValuesView
Description copied from interface:MapIterable
Returns an unmodifiable lazy iterable of key/value pairs wrapped around the entrySet for the map.- Specified by:
keyValuesView
in interfaceMapIterable<K,
V>
-
containsKey
- Specified by:
containsKey
in interfaceMap<K,
V> - Specified by:
containsKey
in interfaceMapIterable<K,
V> - See Also:
-
containsValue
- Specified by:
containsValue
in interfaceMap<K,
V> - Specified by:
containsValue
in interfaceMapIterable<K,
V> - See Also:
-
get
-
toString
Description copied from class:AbstractRichIterable
Returns a string with the elements of the iterable separated by commas with spaces and enclosed in square brackets.Assert.assertEquals("[]", Lists.mutable.empty().toString()); Assert.assertEquals("[1]", Lists.mutable.with(1).toString()); Assert.assertEquals("[1, 2, 3]", Lists.mutable.with(1, 2, 3).toString());
- Specified by:
toString
in interfaceMapIterable<K,
V> - Specified by:
toString
in interfaceRichIterable<K>
- Overrides:
toString
in classAbstractRichIterable<V>
- Returns:
- a string representation of this collection.
- See Also:
-
equals
Description copied from interface:MapIterable
Follows the same general contract asMap.equals(Object)
. -
hashCode
public int hashCode()Description copied from interface:MapIterable
Follows the same general contract asMap.hashCode()
. -
tap
Description copied from interface:MapIterable
Executes the Procedure for each value of the map and returnsthis
.return peopleByCity.tap(person -> LOGGER.info(person.getName()));
- Specified by:
tap
in interfaceImmutableMapIterable<K,
V> - Specified by:
tap
in interfaceImmutableSortedMap<K,
V> - Specified by:
tap
in interfaceMapIterable<K,
V> - Specified by:
tap
in interfaceOrderedIterable<K>
- Specified by:
tap
in interfaceReversibleIterable<K>
- Specified by:
tap
in interfaceRichIterable<K>
- Specified by:
tap
in interfaceSortedMapIterable<K,
V> - Overrides:
tap
in classAbstractImmutableSortedMap<K,
V> - See Also:
-
forEachKeyValue
Description copied from interface:MapIterable
Calls theprocedure
with each key-value pair of the map.final Collection<String> collection = new ArrayList<String>(); MutableMap<Integer, String> map = this.newMapWithKeysValues(1, "One", 2, "Two", 3, "Three"); map.forEachKeyValue((Integer key, String value) -> collection.add(String.valueOf(key) + value)); Verify.assertContainsAll(collection, "1One", "2Two", "3Three");
- Specified by:
forEachKeyValue
in interfaceMapIterable<K,
V>
-
flipUniqueValues
Description copied from interface:MapIterable
Return the MapIterable that is obtained by flipping the direction of this map and making the associations from value to key.MapIterable<Integer, String> map = this.newMapWithKeysValues(1, "1", 2, "2", 3, "3"); MapIterable<String, Integer> result = map.flipUniqueValues(); Assert.assertTrue(result.equals(UnifiedMap.newWithKeysValues("1", 1, "2", 2, "3", 3)));
- Specified by:
flipUniqueValues
in interfaceImmutableMapIterable<K,
V> - Specified by:
flipUniqueValues
in interfaceMapIterable<K,
V>
-
forEachKey
Description copied from interface:MapIterable
Calls theprocedure
with each key of the map.final Collection<Integer> result = new ArrayList<Integer>(); MutableMap<Integer, String> map = this.newMapWithKeysValues(1, "1", 2, "2", 3, "3"); map.forEachKey(new CollectionAddProcedure<Integer>(result)); Verify.assertContainsAll(result, 1, 2, 3);
- Specified by:
forEachKey
in interfaceMapIterable<K,
V> - Overrides:
forEachKey
in classAbstractMapIterable<K,
V>
-
forEachValue
Description copied from interface:MapIterable
Calls the procedure with each value of the map.Set<String> result = UnifiedSet.newSet(); MutableMap<Integer, String> map = this.newMapWithKeysValues(1, "One", 2, "Two", 3, "Three", 4, "Four"); map.forEachValue(new CollectionAddProcedure<String>(result)); Verify.assertSetsEqual(UnifiedSet.newSetWith("One", "Two", "Three", "Four"), result);
- Specified by:
forEachValue
in interfaceMapIterable<K,
V> - Overrides:
forEachValue
in classAbstractMapIterable<K,
V>
-
forEachWithIndex
Description copied from interface:InternalIterable
Iterates over the iterable passing each element and the current relative int index to the specified instance of ObjectIntProcedure.Example using a Java 8 lambda:
people.forEachWithIndex((Person person, int index) -> LOGGER.info("Index: " + index + " person: " + person.getName()));
Example using an anonymous inner class:
people.forEachWithIndex(new ObjectIntProcedure<Person>() { public void value(Person person, int index) { LOGGER.info("Index: " + index + " person: " + person.getName()); } });
- Specified by:
forEachWithIndex
in interfaceInternalIterable<K>
- Specified by:
forEachWithIndex
in interfaceOrderedIterable<K>
- Overrides:
forEachWithIndex
in classAbstractMapIterable<K,
V>
-
forEachWith
Description copied from interface:InternalIterable
The procedure2 is evaluated for each element in the iterable with the specified parameter provided as the second argument.Example using a Java 8 lambda:
people.forEachWith((Person person, Person other) -> { if (person.isRelatedTo(other)) { LOGGER.info(person.getName()); } }, fred);
Example using an anonymous inner class:
people.forEachWith(new Procedure2<Person, Person>() { public void value(Person person, Person other) { if (person.isRelatedTo(other)) { LOGGER.info(person.getName()); } } }, fred);
- Specified by:
forEachWith
in interfaceInternalIterable<K>
- Overrides:
forEachWith
in classAbstractMapIterable<K,
V>
-
isEmpty
public boolean isEmpty()Description copied from interface:RichIterable
Returns true if this iterable has zero items.- Specified by:
isEmpty
in interfaceMap<K,
V> - Specified by:
isEmpty
in interfaceRichIterable<K>
- Overrides:
isEmpty
in classAbstractRichIterable<V>
-
notEmpty
public boolean notEmpty()Description copied from interface:RichIterable
The English equivalent of !this.isEmpty()- Specified by:
notEmpty
in interfaceRichIterable<K>
-
ifPresentApply
Description copied from interface:MapIterable
If there is a value in the Map that corresponds to the specified key return the result of applying the specified Function on the value, otherwise return null.- Specified by:
ifPresentApply
in interfaceMapIterable<K,
V> - Overrides:
ifPresentApply
in classAbstractMapIterable<K,
V>
-
getIfAbsent
Description copied from interface:MapIterable
Return the value in the Map that corresponds to the specified key, or if there is no value at the key, return the result of evaluating the specified Function0.- Specified by:
getIfAbsent
in interfaceMapIterable<K,
V> - Overrides:
getIfAbsent
in classAbstractMapIterable<K,
V>
-
getIfAbsentValue
Description copied from interface:MapIterable
Return the value in the Map that corresponds to the specified key, or if there is no value at the key, returnvalue
.- Specified by:
getIfAbsentValue
in interfaceMapIterable<K,
V> - Overrides:
getIfAbsentValue
in classAbstractMapIterable<K,
V>
-
getIfAbsentWith
Description copied from interface:MapIterable
Return the value in the Map that corresponds to the specified key, or if there is no value at the key, return the result of evaluating the specified function and parameter.- Specified by:
getIfAbsentWith
in interfaceMapIterable<K,
V> - Overrides:
getIfAbsentWith
in classAbstractMapIterable<K,
V>
-
collect
Description copied from interface:MapIterable
For each key and value of the map the function is evaluated. The results of these evaluations are returned in a new map. The map returned will use the values projected from the function rather than the original values.MapIterable<String, String> collected = peopleByCity.collect((City city, Person person) -> Pair.of(city.getCountry(), person.getAddress().getCity()));
- Specified by:
collect
in interfaceImmutableMapIterable<K,
V> - Specified by:
collect
in interfaceImmutableSortedMap<K,
V> - Specified by:
collect
in interfaceMapIterable<K,
V> - Specified by:
collect
in interfaceSortedMapIterable<K,
V> - Overrides:
collect
in classAbstractImmutableSortedMap<K,
V>
-
collectValues
public <R> ImmutableSortedMap<K,R> collectValues(Function2<? super K, ? super V, ? extends R> function) Description copied from interface:MapIterable
For each key and value of the map the function is evaluated. The results of these evaluations are returned in a new map. The map returned will use the values projected from the function rather than the original values.MapIterable<City, String> collected = peopleByCity.collectValues((City city, Person person) -> person.getFirstName() + " " + person.getLastName());
- Specified by:
collectValues
in interfaceImmutableMapIterable<K,
V> - Specified by:
collectValues
in interfaceImmutableSortedMap<K,
V> - Specified by:
collectValues
in interfaceMapIterable<K,
V> - Specified by:
collectValues
in interfaceSortedMapIterable<K,
V> - Overrides:
collectValues
in classAbstractImmutableSortedMap<K,
V>
-
detect
Description copied from interface:MapIterable
Return the first key and value of the map for which the predicate evaluates to true when they are given as arguments. The predicate will only be evaluated until such pair is found or until all the keys and values of the map have been used as arguments. That is, there may be keys and values of the map that are never used as arguments to the predicate. The result is null if predicate does not evaluate to true for any key/value combination.Pair<City, Person> detected = peopleByCity.detect((City city, Person person) -> city.getName().equals("Anytown") && person.getLastName().equals("Smith"));
- Specified by:
detect
in interfaceMapIterable<K,
V> - Overrides:
detect
in classAbstractImmutableSortedMap<K,
V>
-
detectOptional
Description copied from interface:MapIterable
Return the first key and value of the map as an Optional for which the predicate evaluates to true when they are given as arguments. The predicate will only be evaluated until such pair is found or until all the keys and values of the map have been used as arguments. That is, there may be keys and values of the map that are never used as arguments to the predicate.Optional<Pair<City, Person>> detected = peopleByCity.detectOptional((city, person) -> city.getName().equals("Anytown") && person.getLastName().equals("Smith"));
- Specified by:
detectOptional
in interfaceMapIterable<K,
V> - Overrides:
detectOptional
in classAbstractImmutableSortedMap<K,
V>
-
reject
Description copied from interface:MapIterable
For each key and value of the map the predicate is evaluated, if the result of the evaluation is false, that key and value are returned in a new map.MapIterable<City, Person> rejected = peopleByCity.reject((city, person) -> city.getName().equals("Anytown") && person.getLastName().equals("Smith"));
- Specified by:
reject
in interfaceImmutableMapIterable<K,
V> - Specified by:
reject
in interfaceImmutableSortedMap<K,
V> - Specified by:
reject
in interfaceMapIterable<K,
V> - Specified by:
reject
in interfaceSortedMapIterable<K,
V> - Overrides:
reject
in classAbstractImmutableSortedMap<K,
V>
-
entrySet
-
select
Description copied from interface:MapIterable
For each key and value of the map the predicate is evaluated, if the result of the evaluation is true, that key and value are returned in a new map.MapIterable<City, Person> selected = peopleByCity.select((city, person) -> city.getName().equals("Anytown") && person.getLastName().equals("Smith"));
- Specified by:
select
in interfaceImmutableMapIterable<K,
V> - Specified by:
select
in interfaceImmutableSortedMap<K,
V> - Specified by:
select
in interfaceMapIterable<K,
V> - Specified by:
select
in interfaceSortedMapIterable<K,
V> - Overrides:
select
in classAbstractImmutableSortedMap<K,
V>
-
comparator
- Specified by:
comparator
in interfaceSortedMap<K,
V> - Specified by:
comparator
in interfaceSortedMapIterable<K,
V>
-
keySet
-
values
-
firstKey
-
lastKey
-
writeReplace
-
take
Description copied from interface:ReversibleIterable
Returns the firstcount
elements of the iterable or all the elements in the iterable ifcount
is greater than the length of the iterable.- Specified by:
take
in interfaceReversibleIterable<K>
- Specified by:
take
in interfaceSortedMapIterable<K,
V> - Parameters:
count
- the number of items to take.
-
drop
Description copied from interface:ReversibleIterable
Returns an iterable after skipping the firstcount
elements or an empty iterable if thecount
is greater than the length of the iterable.- Specified by:
drop
in interfaceReversibleIterable<K>
- Specified by:
drop
in interfaceSortedMapIterable<K,
V> - Parameters:
count
- the number of items to drop.
-
getOnly
Description copied from interface:RichIterable
Returns the element if the iterable has exactly one element. Otherwise, throwIllegalStateException
.- Specified by:
getOnly
in interfaceRichIterable<K>
- Overrides:
getOnly
in classAbstractMapIterable<K,
V> - Returns:
- an element of an iterable.
-