rulebook-core/src/main/java/com/deliveredtechnologies/rulebook/util/ArrayUtils.java
@SuppressWarnings("unchecked")
  public static <T> T[] combine(T[] array1, T[] array2) {
    return combine(array1, array2, array1.length + array2.length);
  }
@SuppressWarnings("unchecked")
  public static <T> T[] combine(T[] array1, T[] array2) {
    return combine(array1, array2, array1.length + array2.length);
  }
@ SuppressWarnings ( "unchecked" ) public static < T > T [ ] combine ( T [ ] array1 , T [ ] array2 ) { return combine ( array1 , array2 , array1 . length + array2 . length ) ; }
The combine() static method combines the contents of two arrays into a single array of the same type.
@param array1  the array to be concatenated on the left
@param array2  the array to be concatenated on the right
@param <T>     the type of array
@return        a concatenation of array1 and array2
The combine () static method combines the contents of two arrays into a single array of the same type .