/** * Converts array value to array. */ protected T[] convertArrayToArray(Object value) { Class valueComponentType = value.getClass().getComponentType(); if (valueComponentType == targetComponentType) { // equal types, no conversion needed return (T[]) value; } T[] result; if (valueComponentType.isPrimitive()) { // convert primitive array to target array result = convertPrimitiveArrayToArray(value, valueComponentType); } else { // convert object array to target array Object[] array = (Object[]) value; result = createArray(array.length); for (int i = 0; i < array.length; i++) { result[i] = convertType(array[i]); } } return result; }
/** * Converts array value to array. */ protected T[] convertArrayToArray(final Object value) { Class valueComponentType = value.getClass().getComponentType(); if (valueComponentType == targetComponentType) { // equal types, no conversion needed return (T[]) value; } T[] result; if (valueComponentType.isPrimitive()) { // convert primitive array to target array result = convertPrimitiveArrayToArray(value, valueComponentType); } else { // convert object array to target array Object[] array = (Object[]) value; result = createArray(array.length); for (int i = 0; i < array.length; i++) { result[i] = convertType(array[i]); } } return result; }
/** * Converts array value to array. */ protected T[] convertArrayToArray(final Object value) { Class valueComponentType = value.getClass().getComponentType(); if (valueComponentType == targetComponentType) { // equal types, no conversion needed return (T[]) value; } T[] result; if (valueComponentType.isPrimitive()) { // convert primitive array to target array result = convertPrimitiveArrayToArray(value, valueComponentType); } else { // convert object array to target array Object[] array = (Object[]) value; result = createArray(array.length); for (int i = 0; i < array.length; i++) { result[i] = convertType(array[i]); } } return result; }