android/guava/src/com/google/common/collect/ObjectArrays.java
public static <T> T[] concat(@NullableDecl T element, T[] array) {
    T[] result = newArray(array, array.length + 1);
    result[0] = element;
    System.arraycopy(array, 0, result, 1, array.length);
    return result;
  }
public static <T> T[] concat(@NullableDecl T element, T[] array) {
    T[] result = newArray(array, array.length + 1);
    result[0] = element;
    System.arraycopy(array, 0, result, 1, array.length);
    return result;
  }
Returns a new array that prepends {@code element} to {@code array}.

@param element the element to prepend to the front of {@code array}
@param array the array of elements to append
@return an array whose size is one larger than {@code array}, with {@code element} occupying
the first position, and the elements of {@code array} occupying the remaining elements.