/** * Returns a deep copy of the receiver. * * @return a deep copy of the receiver. */ public Object clone() { SparseOpenIntDoubleHashMap copy = (SparseOpenIntDoubleHashMap) super.clone(); copy.table = (int[]) copy.table.clone(); copy.values = (double[]) copy.values.clone(); copy.state = (byte[]) copy.state.clone(); return copy; }
/** * Clears the receiver, then adds all (key,value) pairs of <tt>other</tt>values to it. * * @param other the other map to be copied into the receiver. */ public void assign(AbstractIntHashMap other) { if (!(other instanceof SparseOpenIntDoubleHashMap)) { super.assign(other); return; } SparseOpenIntDoubleHashMap source = (SparseOpenIntDoubleHashMap) other; SparseOpenIntDoubleHashMap copy = (SparseOpenIntDoubleHashMap) source.copy(); this.values = copy.values; this.table = copy.table; this.state = copy.state; this.freeEntries = copy.freeEntries; this.distinct = copy.distinct; this.lowWaterMark = copy.lowWaterMark; this.highWaterMark = copy.highWaterMark; this.minLoadFactor = copy.minLoadFactor; this.maxLoadFactor = copy.maxLoadFactor; }