public final class ArrayUtil
extends java.lang.Object
| Modifier | Constructor and Description | 
|---|---|
private  | 
ArrayUtil()
Forbid instances by this private constructor. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static int[] | 
add(int[] array,
   int toAdd)
 Adds the given element to the existing array. 
 | 
static <T> T[] | 
add(T[] array,
   T toAdd)
 Adds the given element to the existing array. 
 | 
static <T> T[] | 
addAll(T[] array,
      T[] toAdd)
 Adds the given elements to the existing array. 
 | 
static <T> T[] | 
addAll(T[] array,
      T[] toAdd,
      java.lang.Class<?> newArrayType)
 Adds the given elements to the existing array. 
 | 
static <T> boolean | 
contains(T[] array,
        T toSearch)
Checks if the given array contains the element to search. 
 | 
static <T> boolean | 
contains(T[] array,
        T toSearch,
        java.util.Comparator<T> comparator)
Checks if the given array contains the element to search. 
 | 
static <T> T[][] | 
generatePermutations(T[] array)
Computes all permutations of the given array using the
 'Heap's algorithm'. 
 | 
private static <T> int | 
generatePermutations(T[] array,
                    int n,
                    T[][] permutations,
                    int permutationsIndex)
Recursive implementation of the 'Heap's algorithm':
  
 
 procedure generate(n : integer, A : array of any):
    if n = 1 then
       output(A)
    else
       for i := 0; i < n; i += 1 do
          generate(n - 1, A)
          if n is even then
             swap(A[i], A[n-1])
          else
             swap(A[0], A[n-1])
          end if
       end for
    end if
 
  | 
static <T> T | 
getFirst(T[] array)
Returns the first element from the given array. 
 | 
static <T> T | 
getFollowing(T[] array,
            T toSearch)
Returns the following element if available from the array. 
 | 
static <T> T | 
getFollowing(T[] array,
            T toSearch,
            java.util.Comparator<T> comparator)
Returns the following element if available from the array. 
 | 
static <T> T | 
getLast(T[] array)
Returns the last element from the given array. 
 | 
static <T> T | 
getPrevious(T[] array,
           T toSearch)
Returns the previous element if available from the array. 
 | 
static <T> T | 
getPrevious(T[] array,
           T toSearch,
           java.util.Comparator<T> comparator)
Returns the previous element if available from the array. 
 | 
static <T> int | 
indexOf(T[] array,
       T toSearch)
Returns the first index in the given array that contains the
 element to search. 
 | 
static <T> int | 
indexOf(T[] array,
       T toSearch,
       java.util.Comparator<T> comparator)
Returns the first index in the given array that contains the
 element to search. 
 | 
static <T> T[] | 
insert(T[] array,
      T toInsert,
      int index)
 Inserts the given element at the given index to the existing array. 
 | 
static <T> boolean | 
isEmpty(T[] array)
Checks if the given array is empty. 
 | 
static <T> boolean | 
isFirst(T[] array,
       T toSearch)
Checks if the given element is the first element in the array. 
 | 
static <T> boolean | 
isFirst(T[] array,
       T toSearch,
       java.util.Comparator<T> comparator)
Checks if the given element is the first element in the array. 
 | 
static <T> boolean | 
isLast(T[] array,
      T toSearch)
Checks if the given element is the last element in the array. 
 | 
static <T> boolean | 
isLast(T[] array,
      T toSearch,
      java.util.Comparator<T> comparator)
Checks if the given element is the last element in the array. 
 | 
static <T> T[] | 
remove(T[] array,
      T toRemove)
Removes all occurrences from toRemove in the array. 
 | 
static <T> T[] | 
remove(T[] array,
      T toRemove,
      java.util.Comparator<T> comparator)
Removes all occurrences from toRemove in the array. 
 | 
static <T> T | 
search(T[] array,
      IFilter<T> filter)
Searches an element in the given  
Iterable instance. | 
static java.lang.String | 
toString(int[] array)
Converts the given array into a  
String. | 
static java.lang.String | 
toString(int[] array,
        java.lang.String separator)
Converts the given array into a  
String. | 
static <T> java.lang.String | 
toString(T... array)
Converts the given array into a  
String. | 
static <T> java.lang.String | 
toString(T[] array,
        java.lang.String separator)
Converts the given array into a  
String. | 
public static <T> T search(T[] array,
                           IFilter<T> filter)
Iterable instance.array - The instance to search in.filter - The filter to select an element.null if no element was found.public static <T> T[] addAll(T[] array,
                             T[] toAdd)
Adds the given elements to the existing array. The result is a new array that contains the other elements in the end.
 Attention:  It is not possible to use this method with
 two null parameters. In this case is an IllegalArgumentException
 thrown.
 
array - The array to add to.toAdd - The elements to add.java.lang.IllegalArgumentException - Both parameters are null.public static <T> T[] addAll(T[] array,
                             T[] toAdd,
                             java.lang.Class<?> newArrayType)
Adds the given elements to the existing array. The result is a new array that contains the other elements in the end.
 Attention:  It is not possible to use this method with
 two null parameters. In this case is an IllegalArgumentException
 thrown.
 
array - The array to add to.toAdd - The elements to add.newArrayType - The type of the new array.java.lang.IllegalArgumentException - Both parameters are null.public static <T> T[] add(T[] array,
                          T toAdd)
Adds the given element to the existing array. The result is a new array that contains one more element.
 Attention:  It is not possible to use this method with
 two null parameters. In this case is an IllegalArgumentException
 thrown.
 
array - The array to extend.toAdd - The element to add.java.lang.IllegalArgumentException - Both parameters are null.public static int[] add(int[] array,
                        int toAdd)
Adds the given element to the existing array. The result is a new array that contains one more element.
array - The array to extend.toAdd - The element to add.public static <T> T[] insert(T[] array,
                             T toInsert,
                             int index)
Inserts the given element at the given index to the existing array. The result is a new array that contains one more element.
array - The array to extend.toInsert - The element to insert.index - The index to insert the element at.public static <T> boolean contains(T[] array,
                                   T toSearch)
T - The type of the array.array - The array.toSearch - The element to search.true if the array contains the element or false if not or if the array is null.public static <T> boolean contains(T[] array,
                                   T toSearch,
                                   java.util.Comparator<T> comparator)
0.T - The type of the array.array - The array.toSearch - The element to search.comparator - the Comparator to use.true if the array contains the element or false if not or if the array is null.java.lang.IllegalArgumentException - If the comparator is null.public static <T> int indexOf(T[] array,
                              T toSearch)
array - The array to search in.toSearch - The element to search.-1 if the elment is not containd in the array.public static <T> int indexOf(T[] array,
                              T toSearch,
                              java.util.Comparator<T> comparator)
0.array - The array to search in.toSearch - The element to search.comparator - the Comparator to use.-1 if the elment is not containd in the array.java.lang.IllegalArgumentException - If the comparator is null.public static <T> T[] remove(T[] array,
                             T toRemove)
ObjectUtil.equals(Object, Object).array - The array to remove from.toRemove - The element to remove.null if the given array was null.public static <T> T[] remove(T[] array,
                             T toRemove,
                             java.util.Comparator<T> comparator)
0.array - The array to remove from.toRemove - The element to remove.comparator - The Comparator to use.null if the given array was null.java.lang.IllegalArgumentException - If the comparator is null.public static <T> java.lang.String toString(T... array)
String.
 For each element is Object.toString() used to convert it
 into a String.array - The array to convert.String.public static <T> java.lang.String toString(T[] array,
                                            java.lang.String separator)
String.
 For each element is Object.toString() used to convert it
 into a String.array - The array to convert.separator - The separator between to array elements.String.public static java.lang.String toString(int[] array)
String.array - The array to convert.String.public static java.lang.String toString(int[] array,
                                        java.lang.String separator)
String.array - The array to convert.separator - The separator between to array elements.String.public static <T> boolean isEmpty(T[] array)
array - The array to check.true array is empty or null, false array is not empty.public static <T> T getPrevious(T[] array,
                                T toSearch)
array - The array to search in.toSearch - The element for that the previous one is needed.null if no element was found.public static <T> T getPrevious(T[] array,
                                T toSearch,
                                java.util.Comparator<T> comparator)
                         throws java.lang.IllegalArgumentException
0.array - The array to search in.toSearch - The element for that the previous one is needed.comparator - the Comparator to use.null if no element was found.java.lang.IllegalArgumentException - If the comparator is null.public static <T> T getFollowing(T[] array,
                                 T toSearch)
array - The array to search in.toSearch - The element for that the following one is needed.null if no element was found.public static <T> T getFollowing(T[] array,
                                 T toSearch,
                                 java.util.Comparator<T> comparator)
                          throws java.lang.IllegalArgumentException
0.array - The array to search in.toSearch - The element for that the following one is needed.comparator - the Comparator to use.null if no element was found.java.lang.IllegalArgumentException - If the comparator is null.public static <T> boolean isLast(T[] array,
                                 T toSearch)
T - The type of the array.array - The array.toSearch - The element to search.true is last element, false is not last element or even not contained in the array.public static <T> boolean isLast(T[] array,
                                 T toSearch,
                                 java.util.Comparator<T> comparator)
0.T - The type of the array.array - The array.toSearch - The element to search.comparator - the Comparator to use.true is last element, false is not last element or even not contained in the array.java.lang.IllegalArgumentException - If the comparator is null.public static <T> boolean isFirst(T[] array,
                                  T toSearch)
T - The type of the array.array - The array.toSearch - The element to search.true is first element, false is not first element or even not contained in the array.public static <T> boolean isFirst(T[] array,
                                  T toSearch,
                                  java.util.Comparator<T> comparator)
0.T - The type of the array.array - The array.toSearch - The element to search.comparator - the Comparator to use.true is first element, false is not first element or even not contained in the array.java.lang.IllegalArgumentException - If the comparator is null.public static <T> T getFirst(T[] array)
array - The array to get first element from.null if no element is available.public static <T> T getLast(T[] array)
array - The array to get last element from.null if no element is available.public static <T> T[][] generatePermutations(T[] array)
array - The array to generate its permutations.null if the given array is null.https://en.wikipedia.org/wiki/Heap's_algorithmprivate static <T> int generatePermutations(T[] array,
                                            int n,
                                            T[][] permutations,
                                            int permutationsIndex)
 
 procedure generate(n : integer, A : array of any):
    if n = 1 then
       output(A)
    else
       for i := 0; i < n; i += 1 do
          generate(n - 1, A)
          if n is even then
             swap(A[i], A[n-1])
          else
             swap(A[0], A[n-1])
          end if
       end for
    end if
 
 array - The array to generate its permutations.n - The recursive termination criterion.permutations - The result List to fill.https://en.wikipedia.org/wiki/Heap's_algorithm