[
https://issues.apache.org/jira/browse/LANG-1050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14173026#comment-14173026
]
James Sawle commented on LANG-1050:
-----------------------------------
[[email protected]] If an extra method, like the one below were to be added and
the others just modified to use it then the library would still be binary
compatible. The issue would come if we were to remove the other methods;
however I agree with Duncan that this would make it too awkward to use for the
majority of cases.
{code}
public static <T> T[] nullToEmpty(final T[] array, final Class<T> type) {
if(isEmpty(array)) {
return (T[])java.lang.reflect.Array.newInstance(type, 0);
}
return array;
}
{code}
> Change nullToEmpty methods to generics
> --------------------------------------
>
> Key: LANG-1050
> URL: https://issues.apache.org/jira/browse/LANG-1050
> Project: Commons Lang
> Issue Type: Improvement
> Components: lang.*
> Reporter: James Sawle
>
> Currently there are multiple Object based methods which could be replaced by
> a single generic method.
> - public static Long[] nullToEmpty(final Long[] array)
> - public static Integer[] nullToEmpty(final Integer[] array)
> - public static Short[] nullToEmpty(final Short[] array)
> - public static Character[] nullToEmpty(final Character[] array)
> - public static Byte[] nullToEmpty(final Byte[] array)
> - public static Double[] nullToEmpty(final Double[] array)
> - public static Float[] nullToEmpty(final Float[] array)
> - public static Boolean[] nullToEmpty(final Boolean[] array)
> Recommendation, replace all of these with a single method that would also
> allow a defensive programming style when not using wrapped primitives.
> - public static <T> T[] nullToEmpty(final T[] array)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)