code: public V get(Object key) {
          Node<K,V> e;
          return (e = getNode(hash(key), key)) == null ? null : e.value;
      }
docs: Returns the value to which the specified key is mapped,
  or {@code null} if this map contains no mapping for the key.
  
  <p>More formally, if this map contains a mapping from a key
  {@code k} to a value {@code v} such that {@code (key==null ? k==null :
  key.equals(k))}, then this method returns {@code v}; otherwise
  it returns {@code null}.  (There can be at most one such mapping.)
  
  <p>A return value of {@code null} does not <i>necessarily</i>
  indicate that the map contains no mapping for the key; it's also
  possible that the map explicitly maps the key to {@code null}.
  The {@link #containsKey containsKey} operation may be used to
  distinguish these two cases.
  
  @see #put(Object, Object)