Hi Paul,

Hence the question about the method name.
It already documents explicitly that the nullDefault value is returned and does not restrict the value.

To be a direct replacement for the current code, it should return the 2nd value regardless of whether it is null or not.

Roger



On 10/6/2015 9:56 AM, Paul Benedict wrote:
It's quite possible for the second argument to be null. Is that your intention? I am not sure it makes sense, but it's not harmful either. I recommend you can either (1) explicitly document that's a possibility and this method could still return null or (2) prevent it by calling requireNonNull.


Cheers,
Paul

On Tue, Oct 6, 2015 at 8:43 AM, Roger Riggs <roger.ri...@oracle.com <mailto:roger.ri...@oracle.com>> wrote:

    Java.lang.Objects contains a number of convenience methods to make
    it easier to handle references that are null.
    For example, toString(obj, nullDefault),

    A new method is proposed to return the reference or a default
    value if the reference is null.
       static <T> T nonNull(T obj, T nullDefault);

    Alternatives to the method name include
    nonNullOrElse ( using the java.util.Optional name pattern) or
    nonNullOrDefault

    Please review and comment.

    Webrev:
    http://cr.openjdk.java.net/~rriggs/webrev-object-non-null/
    <http://cr.openjdk.java.net/%7Erriggs/webrev-object-non-null/>

    Issue:
    https://bugs.openjdk.java.net/browse/JDK-8138963

    Thanks, Roger



Reply via email to