Checkstyle lamenta il seguente:Le parentesi dovrebbero sempre essere posizionate attorno all'operatore ternario?
return (null == a ? a : new A());
e dice che le parentesi non sono necessarie.
Mentre l'istruzione funziona certamente bene senza di loro, sembra molto più leggibile con loro presente --- altrimenti come io sto leggendo tendo a vedere:
return null
prima e poi fare una pausa per considerare il restante
== a ? a : new A();
parte, poiché il mio cervello è già andato giù per un percorso.
Inoltre, tendo a fare la stessa cosa ogni volta Vedo un operatore ternario, a meno che non sia raggruppato in paren.
Quindi: i parents attorno al ternario dovrebbero essere lo standard di fatto? C'è qualche ragione per non metterli li?
A me è anche più leggibile con i parens. Ho avuto un esempio come var thing = something.prop1.method2() ....? x: y. Leggendolo mi aspettavo per la prima volta qualcosa. Prop1.method2 sarebbe stata la cosa che inizializzava il mio var. Se ci fossero stati dei parenti ... sarei stato sospettoso di usare un operatore ternario. – user420667