Package groovy.lang

# Class MapWithDefault<K,​V>

java.lang.Object
groovy.lang.MapWithDefault<K,​V>

All Implemented Interfaces:
  `java.util.Map<K,​V>`

    public final class MapWithDefault<K,​V>
    extends java.lang.Object
    implements java.util.Map<K,​V>

A wrapper for Map which allows a default value to be specified.

Since:
  1.7.1

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface java.util.Map

  `java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>`

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `clear()` |
  `boolean` | `containsKey​(java.lang.Object key)` |
  `boolean` | `containsValue​(java.lang.Object value)` |
  `java.util.Set<java.util.Map.Entry<K,​V>>` | `entrySet()` |
  `boolean` | `equals​(java.lang.Object obj)` |
  `V` | `get​(java.lang.Object key)` |
  `int` | `hashCode()` |
  `boolean` | `isEmpty()` |
  `java.util.Set<K>` | `keySet()` |
  `static <K,​ V> java.util.Map<K,​V>` | `newInstance​(java.util.Map<K,​V> m, Closure initClosure)` |
  `V` | `put​(K key, V value)` |
  `void` | `putAll​(java.util.Map<? extends K,​? extends V> m)` |
  `V` | `remove​(java.lang.Object key)` |
  `int` | `size()` |
  `java.util.Collection<V>` | `values()` |

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface java.util.Map

  `compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll`

- ## Method Details

  - ### newInstance

    public static <K,​ V> java.util.Map<K,​V> newInstance​(java.util.Map<K,​V> m, Closure initClosure)

  - ### size

    public int size()
    Specified by:
      `size` in interface `java.util.Map<K,​V>`

  - ### isEmpty

    public boolean isEmpty()
    Specified by:
      `isEmpty` in interface `java.util.Map<K,​V>`

  - ### containsKey

    public boolean containsKey​(java.lang.Object key)
    Specified by:
      `containsKey` in interface `java.util.Map<K,​V>`

  - ### containsValue

    public boolean containsValue​(java.lang.Object value)
    Specified by:
      `containsValue` in interface `java.util.Map<K,​V>`

  - ### get

    public V get​(java.lang.Object key)
    Specified by:
      `get` in interface `java.util.Map<K,​V>`

  - ### put

    public V put​(K key, V value)
    Specified by:
      `put` in interface `java.util.Map<K,​V>`

  - ### remove

    public V remove​(java.lang.Object key)
    Specified by:
      `remove` in interface `java.util.Map<K,​V>`

  - ### putAll

    public void putAll​(java.util.Map<? extends K,​? extends V> m)
    Specified by:
      `putAll` in interface `java.util.Map<K,​V>`

  - ### clear

    public void clear()
    Specified by:
      `clear` in interface `java.util.Map<K,​V>`

  - ### keySet

    public java.util.Set<K> keySet()
    Specified by:
      `keySet` in interface `java.util.Map<K,​V>`

  - ### values

    public java.util.Collection<V> values()
    Specified by:
      `values` in interface `java.util.Map<K,​V>`

  - ### entrySet

    public java.util.Set<java.util.Map.Entry<K,​V>> entrySet()
    Specified by:
      `entrySet` in interface `java.util.Map<K,​V>`

  - ### equals

    public boolean equals​(java.lang.Object obj)
    Specified by:
      `equals` in interface `java.util.Map<K,​V>`
    Overrides:
      `equals` in class `java.lang.Object`

  - ### hashCode

    public int hashCode()
    Specified by:
      `hashCode` in interface `java.util.Map<K,​V>`
    Overrides:
      `hashCode` in class `java.lang.Object`