code: public static <T> T[] concat(T[] first, T... second) {
  		int firstLength = first.length;
  		int secondLength = second.length;
  
  		@SuppressWarnings("unchecked")
  		T[] result = (T[]) Array.newInstance( first.getClass().getComponentType(), firstLength + secondLength );
  		System.arraycopy( first, 0, result, 0, firstLength );
  		System.arraycopy( second, 0, result, firstLength, secondLength );
  
  		return result;
  	}
docs: Concats two arrays.
  
  @param first the first array
  @param second the second array
  @param <T> the type of the element in the array
  @return a new array created adding the element in the second array after the first one