guava/src/com/google/common/collect/ArrayTable.java
@CanIgnoreReturnValue
  public V set(int rowIndex, int columnIndex, @Nullable V value) {
    // In GWT array access never throws IndexOutOfBoundsException.
    checkElementIndex(rowIndex, rowList.size());
    checkElementIndex(columnIndex, columnList.size());
    V oldValue = array[rowIndex][columnIndex];
    array[rowIndex][columnIndex] = value;
    return oldValue;
  }
@CanIgnoreReturnValue
  public V set(int rowIndex, int columnIndex, @Nullable V value) {
    // In GWT array access never throws IndexOutOfBoundsException.
    checkElementIndex(rowIndex, rowList.size());
    checkElementIndex(columnIndex, columnList.size());
    V oldValue = array[rowIndex][columnIndex];
    array[rowIndex][columnIndex] = value;
    return oldValue;
  }
@ CanIgnoreReturnValue public V set ( int rowIndex , int columnIndex , @ Nullable V value ) { // In GWT array access never throws IndexOutOfBoundsException. checkElementIndex ( rowIndex , rowList . size ( ) ) ; checkElementIndex ( columnIndex , columnList . size ( ) ) ; V oldValue = array [ rowIndex ] [ columnIndex ] ; array [ rowIndex ] [ columnIndex ] = value ; return oldValue ; }
Associates {@code value} with the specified row and column indices. The logic {@code
put(rowKeyList().get(rowIndex), columnKeyList().get(columnIndex), value)} has the same
behavior, but this method runs more quickly.

@param rowIndex position of the row key in {@link #rowKeyList()}
@param columnIndex position of the row key in {@link #columnKeyList()}
@param value value to store in the table
@return the previous value with the specified row and column
@throws IndexOutOfBoundsException if either index is negative, {@code rowIndex} is greater than
or equal to the number of allowed row keys, or {@code columnIndex} is greater than or equal
to the number of allowed column keys
Associates { @code value } with the specified row and column indices . The logic { @code put ( rowKeyList () . get ( rowIndex ) columnKeyList () . get ( columnIndex ) value ) } has the same behavior but this method runs more quickly .