Class ArraysX


  • public class ArraysX
    extends java.lang.Object
    Utilities for handling arrays.
    Author:
    henrichen
    • Constructor Summary

      Constructors 
      Constructor Description
      ArraysX()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.util.List<java.lang.Object> asBoxedList​(java.lang.Object primitiveArray)
      Returns a fixed-size boxed list backed by the specified primitive array.
      static <T> java.util.List<T> asList​(T[] ary)
      Returns a mutable list.
      static <T> java.util.List<java.util.List<T>> asList​(T[][] ary)
      Returns a two dimensional mutable list.
      static java.lang.Object concat​(java.lang.Object ary, java.lang.Object ary1)
      Concatenates the two specified array.
      static <T> T[] concat​(T[] ary, T[] ary1)
      Concatenates the two specified generic array.
      static java.lang.Object duplicate​(java.lang.Object ary)
      Duplicates the specified array.
      static java.lang.Object duplicate​(java.lang.Object ary, int jb, int je)
      Duplicates the specified array.
      static <T> T[] duplicate​(T[] ary)
      Duplicates the specified generic array.
      static <T> T[] duplicate​(T[] ary, int jb, int je)
      Duplicates the specified generic array.
      static java.lang.Object resize​(java.lang.Object ary, int size)
      Resizes the specified array.
      static <T> T[] resize​(T[] ary, int size)
      Resizes the specified generic array.
      static java.lang.Object shrink​(java.lang.Object ary, int jb, int je)
      Shrink the specified array.
      static <T> T[] shrink​(T[] ary, int jb, int je)
      Shrink the specified array.
      static java.lang.String toHexString​(byte[] array)
      Returns the hex String representation of a byte array without prefix 0x.
      static java.lang.String toOctalString​(byte[] array, java.lang.String prefix)
      Returns the octal String representation of a byte array with optional prefix.
      static java.lang.String toString​(boolean[] array)
      Converts an array of boolean to a readable string (for debugging purpose).
      static java.lang.String toString​(byte[] array)
      Converts an array of byte to a readable string (for debugging purpose).
      static java.lang.String toString​(char[] array)
      Converts an array of char to a readable string (for debugging purpose).
      static java.lang.String toString​(double[] array)
      Converts an array of char to a readable string (for debugging purpose).
      static java.lang.String toString​(float[] array)
      Converts an array of float to a readable string (for debugging purpose).
      static java.lang.String toString​(int[] array)
      Converts an array of int to a readable string (for debugging purpose).
      static java.lang.String toString​(long[] array)
      Converts an array of long to a readable string (for debugging purpose).
      static java.lang.String toString​(short[] array)
      Converts an array of short to a readable string (for debugging purpose).
      static java.lang.String toString​(java.lang.Object[] array)
      Converts an array to a readable string (for debugging purpose).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ArraysX

        public ArraysX()
    • Method Detail

      • toString

        public static final java.lang.String toString​(java.lang.Object[] array)
        Converts an array to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(int[] array)
        Converts an array of int to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(long[] array)
        Converts an array of long to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(short[] array)
        Converts an array of short to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(byte[] array)
        Converts an array of byte to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(char[] array)
        Converts an array of char to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(boolean[] array)
        Converts an array of boolean to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(float[] array)
        Converts an array of float to a readable string (for debugging purpose).
      • toString

        public static final java.lang.String toString​(double[] array)
        Converts an array of char to a readable string (for debugging purpose).
      • toHexString

        public static final java.lang.String toHexString​(byte[] array)
        Returns the hex String representation of a byte array without prefix 0x. The String is formed by making value[0] the leftmost two digits and value[value.length-1] the rightmost two digits.
        Parameters:
        array - the byte array
      • toOctalString

        public static final java.lang.String toOctalString​(byte[] array,
                                                           java.lang.String prefix)
        Returns the octal String representation of a byte array with optional prefix. The String is formed by making value[0] the leftmost three digits and value[value.length-1] the rightmost three digits.
        Parameters:
        array - the byte array
      • duplicate

        public static final java.lang.Object duplicate​(java.lang.Object ary,
                                                       int jb,
                                                       int je)
        Duplicates the specified array.

        The array could be an array of objects or primitives.

        Parameters:
        ary - the array
        jb - the beginning index (included)
        je - the ending index (excluded)
        Returns:
        an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
      • duplicate

        public static final <T> T[] duplicate​(T[] ary,
                                              int jb,
                                              int je)
        Duplicates the specified generic array.

        The array could be an array of objects or primitives.

        Parameters:
        ary - the array
        jb - the beginning index (included)
        je - the ending index (excluded)
        Returns:
        an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
        Since:
        6.0.0
      • duplicate

        public static final java.lang.Object duplicate​(java.lang.Object ary)
        Duplicates the specified array.
        Parameters:
        ary - the array
        Returns:
        an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
      • duplicate

        public static final <T> T[] duplicate​(T[] ary)
        Duplicates the specified generic array.
        Parameters:
        ary - the array
        Returns:
        an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
        Since:
        6.0.0
      • concat

        public static final java.lang.Object concat​(java.lang.Object ary,
                                                    java.lang.Object ary1)
        Concatenates the two specified array.

        The array could be an array of objects or primitives.

        Parameters:
        ary - the array
        ary1 - the array
        Returns:
        an array concatenating the ary and ary1
        Throws:
        java.lang.IllegalArgumentException - if ary and ary1 component types are not compatible
      • concat

        public static final <T> T[] concat​(T[] ary,
                                           T[] ary1)
        Concatenates the two specified generic array.

        The array could be an array of objects or primitives.

        Parameters:
        ary - the array
        ary1 - the array
        Returns:
        an array concatenating the ary and ary1
        Throws:
        java.lang.IllegalArgumentException - if ary and ary1 component types are not compatible
        Since:
        6.0.0
      • shrink

        public static final java.lang.Object shrink​(java.lang.Object ary,
                                                    int jb,
                                                    int je)
        Shrink the specified array. It is similar to duplicate, except it returns the previous instance if je==length && jb==0.
        Parameters:
        ary - the array
        jb - the beginning index (included)
        je - the ending index (excluded)
        Returns:
        ary or an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
      • shrink

        public static final <T> T[] shrink​(T[] ary,
                                           int jb,
                                           int je)
        Shrink the specified array. It is similar to duplicate, except it returns the previous instance if je==length && jb==0.
        Parameters:
        ary - the array
        jb - the beginning index (included)
        je - the ending index (excluded)
        Returns:
        ary or an array duplicated from ary
        Throws:
        java.lang.IllegalArgumentException - if ary is not any array
        java.lang.IndexOutOfBoundsException - if out of bounds
        Since:
        6.0.0
      • asList

        public static final <T> java.util.List<T> asList​(T[] ary)
        Returns a mutable list.

        Never be null.

        Parameters:
        ary - the data array
        Returns:
        a list view of the specified array
        Since:
        6.0.1
      • asList

        public static final <T> java.util.List<java.util.List<T>> asList​(T[][] ary)
        Returns a two dimensional mutable list.

        Never be null.

        Parameters:
        ary - the two dimensional data array
        Returns:
        a two dimensional list view of the specified array
        Since:
        6.0.1
        See Also:
        asList(Object[])
      • resize

        public static final java.lang.Object resize​(java.lang.Object ary,
                                                    int size)
        Resizes the specified array. Similar to shrink(java.lang.Object, int, int), but it can enlarge and it keeps elements from the first.
      • resize

        public static final <T> T[] resize​(T[] ary,
                                           int size)
        Resizes the specified generic array.
        Since:
        6.0.0
      • asBoxedList

        public static java.util.List<java.lang.Object> asBoxedList​(java.lang.Object primitiveArray)
        Returns a fixed-size boxed list backed by the specified primitive array.
        Parameters:
        primitiveArray - A primitive array object
        Returns:
        A List object
        Since:
        9.6.0