public V setValueAt(int index, V value) {
        index = (index << 1) + 1;
        V old = (V)mArray[index];
        mArray[index] = value;
        return old;
    }
Set the value at a given index in the array.
@param index The desired index, must be between 0 and {@link #size()}-1.
@param value The new value to store at this index.
@return Returns the previous value at the given index.
core/src/main/java/com/bluelinelabs/logansquare/util/SimpleArrayMap.java