8

Which do you prefer of these two? The goal is the same. If bar is null then make foo null and avoid the exception. In other languages there is the ?. operator to help with this.

foo = bar == null ? null : bar.baz();
foo = bar != null ? bar.baz() : null;

I ask because I feel like the "English" of the first example is easier to read and has less negations so it is more straightforward, but the second one has the meat of the expression (bar.baz()) more prominently.

you are viewing a single comment's thread
view the rest of the comments
[-] presumably_wrong@lemm.ee 5 points 1 year ago* (last edited 1 year ago)

In java 9 there is Objects.requireNonNullElse(obj, defaultValue)

[-] JackbyDev@programming.dev 2 points 1 year ago

That wouldn't help in the specific examples above but that's still nice to know about!

[-] JavaCodeWriter@programming.dev 1 points 1 year ago

In java 9 there is Objects.requireNonNullElse(obj, defaultValue)

I did not know this existed, this is amazing.

this post was submitted on 28 Jun 2023
8 points (100.0% liked)

Java

1395 readers
1 users here now

For discussing Java, the JVM, languages that run on the JVM, and other related technologies.

founded 1 year ago
MODERATORS