public Array<T> append(final Array<T> array) {
		final Array<T> appended = newInstance(length() + array.length());
		for (int i = 0; i < _length; ++i) {
			appended.set(i, get(i));
		}
		for (int i = 0; i < array._length; ++i) {
			appended.set(i + _length, array.get(i));
		}

		return appended;
	}
public Array < T > append ( final Array < T > array ) { final Array < T > appended = newInstance ( length ( ) + array . length ( ) ) ; for ( int i = 0 ; i < _length ; ++ i ) { appended . set ( i , get ( i ) ) ; } for ( int i = 0 ; i < array . _length ; ++ i ) { appended . set ( i + _length , array . get ( i ) ) ; } return appended ; }
Return a <i>new</i> {@code Array} object with the given values appended.

@since 3.4

@param array the values to append
@return a <i>new</i> {@code Array} object with the elements of
{@code this} array and the given {@code array} appended.
@throws NullPointerException if the given {@code array} is {@code null}