diff --git a/src/java/org/apache/commons/lang/ArrayUtils.java b/src/java/org/apache/commons/lang/ArrayUtils.java index 08e17ef02..7f1451faf 100644 --- a/src/java/org/apache/commons/lang/ArrayUtils.java +++ b/src/java/org/apache/commons/lang/ArrayUtils.java @@ -4414,27 +4414,4 @@ private static Object remove(Object array, int index) { return result; } - /** - *

Converts an array of Object in to an Array of Class objects.

- * - *

This method returns null for a null input array.

- * - * @param array an Object array - * @return a Class array, null if null array input - * @since 2.4 - */ - public static Class[] toClass(Object[] array) - { - if (array == null) { - return null; - } else if (array.length == 0) { - return EMPTY_CLASS_ARRAY; - } - Class[] classes = new Class[array.length]; - for (int i = 0; i < array.length; i++) { - classes[i] = array[i].getClass(); - } - return classes; - } - } diff --git a/src/java/org/apache/commons/lang/ClassUtils.java b/src/java/org/apache/commons/lang/ClassUtils.java index 29f9d46fc..254fa819c 100644 --- a/src/java/org/apache/commons/lang/ClassUtils.java +++ b/src/java/org/apache/commons/lang/ClassUtils.java @@ -739,4 +739,26 @@ private static String toProperClassName(String className) { return className; } + /** + *

Converts an array of Object in to an Array of Class objects.

+ * + *

This method returns null for a null input array.

+ * + * @param array an Object array + * @return a Class array, null if null array input + * @since 2.4 + */ + public static Class[] toClass(Object[] array) + { + if (array == null) { + return null; + } else if (array.length == 0) { + return ArrayUtils.EMPTY_CLASS_ARRAY; + } + Class[] classes = new Class[array.length]; + for (int i = 0; i < array.length; i++) { + classes[i] = array[i].getClass(); + } + return classes; + } } diff --git a/src/test/org/apache/commons/lang/ArrayUtilsTest.java b/src/test/org/apache/commons/lang/ArrayUtilsTest.java index cab340e97..a7a25973b 100644 --- a/src/test/org/apache/commons/lang/ArrayUtilsTest.java +++ b/src/test/org/apache/commons/lang/ArrayUtilsTest.java @@ -2420,24 +2420,6 @@ public void testToObject_double() { new double[] { Double.MIN_VALUE, Double.MAX_VALUE, 9999999 }))); } - public void testToClass_object() { - assertEquals(null, ArrayUtils.toClass(null)); - - assertSame( - ArrayUtils.EMPTY_CLASS_ARRAY, - ArrayUtils.toClass(new Class[0])); - - Object[] array = new Object[3]; - array[0] = new String("Test"); - array[1] = new Integer(1); - array[2] = new Double(99); - - Class[] results = ArrayUtils.toClass(array); - assertEquals("String", ClassUtils.getShortClassName(results[0])); - assertEquals("Integer", ClassUtils.getShortClassName(results[1])); - assertEquals("Double", ClassUtils.getShortClassName(results[2])); - } - //----------------------------------------------------------------------- /** * Test for {@link ArrayUtils#isEmpty(java.lang.Object[])}. diff --git a/src/test/org/apache/commons/lang/ClassUtilsTest.java b/src/test/org/apache/commons/lang/ClassUtilsTest.java index d0dfd7bc0..a0090173b 100644 --- a/src/test/org/apache/commons/lang/ClassUtilsTest.java +++ b/src/test/org/apache/commons/lang/ClassUtilsTest.java @@ -581,4 +581,22 @@ public void testGetPublicMethod() throws Exception { assertEquals(Object.class.getMethod("toString", new Class[0]), toStringMethod); } + public void testToClass_object() { + assertEquals(null, ClassUtils.toClass(null)); + + assertSame( + ArrayUtils.EMPTY_CLASS_ARRAY, + ClassUtils.toClass(new Class[0])); + + Object[] array = new Object[3]; + array[0] = new String("Test"); + array[1] = new Integer(1); + array[2] = new Double(99); + + Class[] results = ClassUtils.toClass(array); + assertEquals("String", ClassUtils.getShortClassName(results[0])); + assertEquals("Integer", ClassUtils.getShortClassName(results[1])); + assertEquals("Double", ClassUtils.getShortClassName(results[2])); + } + }