public V remove ( K key ) { int hashCode = key . hashCode ( ) ; int index = hashCode & mask ; if ( key . equals ( keyTable [ index ] ) ) { keyTable [ index ] = null ; V oldValue = valueTable [ index ] ; valueTable [ index ] = null ; size -- ; return oldValue ; } index = hash2 ( hashCode ) ; if ( key . equals ( keyTable [ index ] ) ) { keyTable [ index ] = null ; V oldValue = valueTable [ index ] ; valueTable [ index ] = null ; size -- ; return oldValue ; } index = hash3 ( hashCode ) ; if ( key . equals ( keyTable [ index ] ) ) { keyTable [ index ] = null ; V oldValue = valueTable [ index ] ; valueTable [ index ] = null ; size -- ; return oldValue ; } if ( bigTable ) { index = hash4 ( hashCode ) ; if ( key . equals ( keyTable [ index ] ) ) { keyTable [ index ] = null ; V oldValue = valueTable [ index ] ; valueTable [ index ] = null ; size -- ; return oldValue ; } } return removeStash ( key ) ; }
Returns the value associated with the key or null .