public boolean remove(final int k) {
    if (k == 0) {
      if (containsNull) {
        return removeNullEntry();
      }
      return false;
    }
    int curr;
    final int[] key = this.key;
    int pos;
    // The starting point.
    if ((curr = key[pos = Hash.mix(k) & mask]) == 0) {
      return false;
    }
    if (k == curr) {
      return removeEntry(pos);
    }
    while (true) {
      if ((curr = key[pos = pos + 1 & mask]) == 0) {
        return false;
      }
      if (k == curr) {
        return removeEntry(pos);
      }
    }
  }
public boolean remove(final int k)