Which order do you prefer for null testing ternary expressions?

3 years ago by JackbyDev to c/java

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.

load all comments
kmo 4 points 3 years ago

If I had to go with the ternary operator, I would choose not to negate the statement for the sake of readability.

If I had free will of choice I would prefer using the Optionals API, like @MagicShel@programming.dev did.

path: 0 645000, hotness: undefined, score: 4, children: 0
java
java

@programming.dev

login for more options
2059
259
4

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

go to feed...