ArrayList<ValueNumber> newList = new ArrayList<ValueNumber>(numValuesAllocated); for (int i = 0; i < numValuesAllocated; ++i) newList.add(null);
ArrayList<ValueNumber> newList = new ArrayList<ValueNumber>(Collections.nCopies(numValuesAllocated, (ValueNumber)null));
	public void compact(int[] map, int numValuesAllocated) {		ArrayList<ValueNumber> oldList = this.allocatedValueList;		//ArrayList<ValueNumber> newList = new ArrayList<ValueNumber>(Collections.nCopies(numValuesAllocated, null));		ArrayList<ValueNumber> newList = new ArrayList<ValueNumber>(numValuesAllocated);		for (int i = 0; i < numValuesAllocated; ++i)			newList.add(null);		for (Iterator<ValueNumber> i = oldList.iterator(); i.hasNext(); ) {			ValueNumber value = i.next();			int newNumber = map[value.getNumber()];			if (newNumber >= 0) {				value.number = newNumber;				newList.set(newNumber, value);			}		}		this.allocatedValueList = newList;	}