Arrays2 { public static boolean isArray(Object o) { return o != null && o.getClass().isArray(); } private  Arrays2(); static void copy(final double[] sourceArray,
            final double[] destinationArray, final int length); static void reverse(final double[] array); static void reverse(final double[] array, final int start, final int n); static void reverse(final int[] array); static void reverse(final int[] array, final int start, final int n); static void reverse(final Object[] array); static void reverse(final Object[] array, final int start, final int n); static void swap(double array[], int a, int b); static void swap(int array[], int a, int b); static void swap(Object array[], int a, int b); static boolean isNullOrEmpty(Object[] array); static boolean isNullOrEmpty(double[] array); static boolean isNullOrEmpty(int[] array); static T[] copyOf(T[] original); static T[] concat(T[] first, T[] second); static double[] concat(double[]... arrays); static double[] compact(final double[] array); static void shift(double[] array, int shiftsize); static void shift(double[] array, int shiftsize, int fromIndex, int toIndex); static boolean isArray(Object o); static boolean arrayEquals(T oldValue, T newValue); static List<T> unmodifiableList(T... array); static final String[] EMPTY_STRING_ARRAY; static final int[] EMPTY_INT_ARRAY; static final long[] EMPTY_LONG_ARRAY; static final double[] EMPTY_DOUBLE_ARRAY; static final boolean[] EMPTY_BOOLEAN_ARRAY; }
@Test public void testIsArray() { assertTrue(Arrays2.isArray(new long[0])); assertTrue(Arrays2.isArray(new int[0])); assertTrue(Arrays2.isArray(new short[0])); assertTrue(Arrays2.isArray(new char[0])); assertTrue(Arrays2.isArray(new byte[0])); assertTrue(Arrays2.isArray(new boolean[0])); assertTrue(Arrays2.isArray(new double[0])); assertTrue(Arrays2.isArray(new float[0])); assertTrue(Arrays2.isArray(new Object[0])); assertFalse(Arrays2.isArray(123)); assertFalse(Arrays2.isArray("123")); }