/**
   * Removes all (key,value) associations from the receiver. Implicitly calls <tt>trimToSize()</tt>.
   */
  public void clear() {
    new ByteArrayList(this.state).fillFromToWith(0, this.state.length - 1, FREE);
    // new DoubleArrayList(values).fillFromToWith(0, state.length-1, 0); // delta

    /*
     * if (debug) { for (int i=table.length; --i >= 0; ) { state[i] = FREE; table[i]=
     * Integer.MAX_VALUE; values[i]= Double.NaN; } }
     */

    this.distinct = 0;
    this.freeEntries = table.length; // delta
    trimToSize();
  }