@Override
    public String toString() {
        StringBuffer sb = new StringBuffer("HashTable: {");

        KeyValueHolder<K, V> holder;

        // See the old buckets
        for (int i = 0; i < buckets.getSize(); ++i) {


            // See the collisions
            Array<KeyValueHolder<K, V>> subArray = buckets.getElement(i);

            if (subArray != null) {
                for (int j = 0; j < subArray.getSize(); ++j) {
                    sb.append("\t");
                    holder = subArray.getElement(j);
                    sb.append(holder.key.toString());
                    sb.append("\t→\t");
                    sb.append(holder.value.toString());
                }
            }
        }
        sb.append("\n}");
        return sb.toString();
    }