@Immutable public class ImmutableUnifiedMapWithHashingStrategy<K,V> extends AbstractImmutableMap<K,V> implements BatchIterable<V>, Serializable
| Constructor and Description | 
|---|
| ImmutableUnifiedMapWithHashingStrategy(HashingStrategy<? super K> hashingStrategy,
                                      Pair<K,V>... pairs) | 
| ImmutableUnifiedMapWithHashingStrategy(UnifiedMapWithHashingStrategy<K,V> delegate) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | batchForEach(Procedure<? super V> procedure,
            int sectionIndex,
            int sectionCount) | 
| <R> ImmutableMap<K,R> | collectValues(Function2<? super K,? super V,? extends R> function)For each key and value of the map the function is evaluated. | 
| boolean | containsKey(Object key) | 
| boolean | containsValue(Object value) | 
| Set<Map.Entry<K,V>> | entrySet() | 
| boolean | equals(Object o)Follows the same general contract as  Map.equals(Object). | 
| void | forEachKey(Procedure<? super K> procedure)Calls the  procedurewith each key of the map. | 
| void | forEachKeyValue(Procedure2<? super K,? super V> procedure)Calls the  procedurewith 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. | 
| V | get(Object key) | 
| int | getBatchCount(int batchSize) | 
| int | hashCode()Follows the same general contract as  Map.hashCode(). | 
| Set<K> | keySet() | 
| RichIterable<K> | keysView()Returns an unmodifiable lazy iterable wrapped around the keySet for the map | 
| RichIterable<Pair<K,V>> | keyValuesView()Returns an unmodifiable lazy iterable of key/value pairs wrapped around the entrySet for the map | 
| ImmutableMap<K,V> | newWithAllKeyValueArguments(Pair<? extends K,? extends V>... keyValuePairs) | 
| ImmutableMap<K,V> | newWithAllKeyValues(Iterable<? extends Pair<? extends K,? extends V>> keyValues) | 
| ImmutableMap<K,V> | newWithKeyValue(K key,
               V value) | 
| ImmutableMap<K,V> | newWithoutAllKeys(Iterable<? extends K> keys) | 
| ImmutableMap<K,V> | newWithoutKey(K key) | 
| ImmutableMap<K,V> | 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. | 
| ImmutableMap<K,V> | 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. | 
| String | toString()Returns a string representation of this collection. | 
| Collection<V> | values() | 
| RichIterable<V> | valuesView()Returns an unmodifiable lazy iterable wrapped around the values for the map | 
aggregateBy, aggregateInPlaceBy, castToMap, clear, collect, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, detect, flatCollect, flip, flipUniqueValues, groupBy, groupByEach, groupByUniqueKey, iterator, partition, partitionWith, put, putAll, reject, rejectWith, remove, select, selectInstancesOf, selectWith, tap, toImmutable, toMap, zip, zipWithIndexallSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, asLazy, chunk, contains, detect, detectIfNone, detectWith, detectWithIfNone, each, getFirst, getIfAbsent, getIfAbsentValue, getIfAbsentWith, getLast, ifPresentApply, noneSatisfy, noneSatisfyWith, toArray, toArrayappendString, appendString, appendString, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, containsAll, containsAllArguments, containsAllIterable, count, countWith, flatCollect, forEach, groupBy, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, isEmpty, makeString, makeString, makeString, max, max, maxBy, min, min, minBy, notEmpty, reject, rejectWith, select, selectWith, sumByDouble, sumByFloat, sumByInt, sumByLong, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toBag, toList, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedList, toSortedList, toSortedListBy, toSortedMap, toSortedMap, toSortedSet, toSortedSet, toSortedSetBy, zip, zipWithIndexforEachgetIfAbsent, getIfAbsentValue, getIfAbsentWith, ifPresentApplyallSatisfy, allSatisfyWith, anySatisfy, anySatisfyWith, appendString, appendString, appendString, asLazy, chunk, collect, collectBoolean, collectByte, collectChar, collectDouble, collectFloat, collectIf, collectInt, collectLong, collectShort, collectWith, contains, containsAll, containsAllArguments, containsAllIterable, count, countWith, detect, detectIfNone, detectWith, detectWithIfNone, each, flatCollect, getFirst, getLast, groupBy, groupByEach, groupByUniqueKey, injectInto, injectInto, injectInto, injectInto, injectInto, isEmpty, makeString, makeString, makeString, max, max, maxBy, min, min, minBy, noneSatisfy, noneSatisfyWith, notEmpty, reject, rejectWith, select, selectWith, sumByDouble, sumByFloat, sumByInt, sumByLong, sumOfDouble, sumOfFloat, sumOfInt, sumOfLong, toArray, toArray, toBag, toList, toMap, toSet, toSortedBag, toSortedBag, toSortedBagBy, toSortedList, toSortedList, toSortedListBy, toSortedMap, toSortedMap, toSortedSet, toSortedSet, toSortedSetBy, zip, zipWithIndexforEachforEach, spliteratorcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, isEmpty, merge, putIfAbsent, remove, replace, replace, replaceAllpublic ImmutableUnifiedMapWithHashingStrategy(UnifiedMapWithHashingStrategy<K,V> delegate)
public ImmutableUnifiedMapWithHashingStrategy(HashingStrategy<? super K> hashingStrategy, Pair<K,V>... pairs)
public boolean equals(Object o)
MapIterableMap.equals(Object).public int hashCode()
MapIterableMap.hashCode().public String toString()
AbstractRichIterable
This implementation creates an empty string buffer, appends a left square bracket, and iterates over the collection appending the string representation of each element in turn. After appending each element except the last, the string ", " is appended. Finally a right bracket is appended. A string is obtained from the string buffer, and returned.
toString in interface MapIterable<K,V>toString in interface RichIterable<V>toString in class AbstractRichIterable<V>public int size()
RichIterablesize in interface Map<K,V>size in interface RichIterable<V>size in interface BatchIterable<V>public boolean containsKey(Object key)
containsKey in interface Map<K,V>containsKey in interface MapIterable<K,V>Map.containsKey(Object)public boolean containsValue(Object value)
containsValue in interface Map<K,V>containsValue in interface MapIterable<K,V>Map.containsValue(Object)public V get(Object key)
get in interface Map<K,V>get in interface MapIterable<K,V>Map.get(Object)public int getBatchCount(int batchSize)
getBatchCount in interface BatchIterable<V>public void batchForEach(Procedure<? super V> procedure, int sectionIndex, int sectionCount)
batchForEach in interface BatchIterable<V>public void forEachValue(Procedure<? super V> procedure)
MapIterable
     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);
 forEachValue in interface MapIterable<K,V>forEachValue in class AbstractMapIterable<K,V>public void forEachKey(Procedure<? super K> procedure)
MapIterableprocedure 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);
 forEachKey in interface MapIterable<K,V>forEachKey in class AbstractMapIterable<K,V>public void forEachKeyValue(Procedure2<? super K,? super V> procedure)
MapIterableprocedure 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(new Procedure2<Integer, String>()
     {
         public void value(final Integer key, final String value)
         {
             collection.add(String.valueOf(key) + value);
         }
     });
     Verify.assertContainsAll(collection, "1One", "2Two", "3Three");
 forEachKeyValue in interface MapIterable<K,V>public RichIterable<K> keysView()
MapIterablekeysView in interface MapIterable<K,V>public RichIterable<V> valuesView()
MapIterablevaluesView in interface MapIterable<K,V>public RichIterable<Pair<K,V>> keyValuesView()
MapIterablekeyValuesView in interface MapIterable<K,V>public void forEachWithIndex(ObjectIntProcedure<? super V> objectIntProcedure)
InternalIterableExample 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() { public void value(Person person, int index) { LOGGER.info("Index: " + index + " person: " + person.getName()); } }); 
forEachWithIndex in interface InternalIterable<V>forEachWithIndex in class AbstractMapIterable<K,V>public <P> void forEachWith(Procedure2<? super V,? super P> procedure, P parameter)
InternalIterableExample 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() { public void value(Person person, Person other) { if (person.isRelatedTo(other)) { LOGGER.info(person.getName()); } } }, fred); 
forEachWith in interface InternalIterable<V>forEachWith in class AbstractMapIterable<K,V>public ImmutableMap<K,V> newWithKeyValue(K key, V value)
newWithKeyValue in interface ImmutableMap<K,V>newWithKeyValue in interface ImmutableMapIterable<K,V>newWithKeyValue in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> newWithAllKeyValues(Iterable<? extends Pair<? extends K,? extends V>> keyValues)
newWithAllKeyValues in interface ImmutableMap<K,V>newWithAllKeyValues in interface ImmutableMapIterable<K,V>newWithAllKeyValues in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> newWithAllKeyValueArguments(Pair<? extends K,? extends V>... keyValuePairs)
newWithAllKeyValueArguments in interface ImmutableMap<K,V>newWithAllKeyValueArguments in interface ImmutableMapIterable<K,V>newWithAllKeyValueArguments in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> newWithoutKey(K key)
newWithoutKey in interface ImmutableMap<K,V>newWithoutKey in interface ImmutableMapIterable<K,V>newWithoutKey in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> newWithoutAllKeys(Iterable<? extends K> keys)
newWithoutAllKeys in interface ImmutableMap<K,V>newWithoutAllKeys in interface ImmutableMapIterable<K,V>newWithoutAllKeys in class AbstractImmutableMap<K,V>public <R> ImmutableMap<K,R> collectValues(Function2<? super K,? super V,? extends R> function)
MapIterable
e.g.
 peopleByCity.collectValues(new Function2<City, Person, String>()
 {
     public String value(City city, Person person)
     {
         return person.getFirstName() + " " + person.getLastName();
     }
 });
 collectValues in interface ImmutableMap<K,V>collectValues in interface ImmutableMapIterable<K,V>collectValues in interface MapIterable<K,V>collectValues in interface UnsortedMapIterable<K,V>collectValues in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> select(Predicate2<? super K,? super V> predicate)
MapIterable
e.g.
 peopleByCity.select(new Predicate2<City, Person>()
 {
     public boolean accept(City city, Person person)
     {
         return city.getName().equals("Anytown") && person.getLastName().equals("Smith");
     }
 });
 select in interface ImmutableMap<K,V>select in interface ImmutableMapIterable<K,V>select in interface MapIterable<K,V>select in interface UnsortedMapIterable<K,V>select in class AbstractImmutableMap<K,V>public ImmutableMap<K,V> reject(Predicate2<? super K,? super V> predicate)
MapIterable
e.g.
 peopleByCity.reject(new Predicate2<City, Person>()
 {
     public boolean accept(City city, Person person)
     {
         return city.getName().equals("Anytown") && person.getLastName().equals("Smith");
     }
 });
 reject in interface ImmutableMap<K,V>reject in interface ImmutableMapIterable<K,V>reject in interface MapIterable<K,V>reject in interface UnsortedMapIterable<K,V>reject in class AbstractImmutableMap<K,V>Copyright © 2004–2016. All rights reserved.