On 01/13/2011 02:06 PM, Brian Goetz wrote:
I propose to change these to be called checkNonNull(), so their
null-checking behavior is obvious to readers of code

I agree with this, but...

and to leave room
to LATER provide methods like

public static<T> T nonNull(T[] obj) {
return (obj == null) ? (T[]) ZERO_LENGTH_ARRAY : obj;
}

I assume you meant:

public static<T> T[] nonNull(T[] obj) { ...

This probably won't fly because ZERO_LENGTH_ARRAY can only be an Object[], so this method would have to return Object[] else you'll get CCEs.

and
public static<T> T nonNull(String obj) {
return (obj == null) ? "" : obj;
}
etc.

I don't know, this doesn't feel right to me. It would probably make more sense to have a:

public static <T> T defaulted(T test, T defVal) {
    return test == null ? defVal : test;
}

This would cover both of the above cases and more.

--
- DML

Reply via email to