public boolean removeKey ( long key ) { int i = indexOfKey ( key ) ; if ( i < 0 ) return false ; // key not contained this . state [ i ] = REMOVED ; this . values [ i ] = 0 ; // delta this . distinct -- ; if ( this . distinct < this . lowWaterMark ) { int newCapacity = chooseShrinkCapacity ( this . distinct , this . minLoadFactor , this . maxLoadFactor ) ; rehash ( newCapacity ) ; } return true ; }
Removes the given key with its associated element from the receiver if present .