Eu quase nunca uso o operador ternário, porque sempre que eu o uso, isso sempre me faz pensar muito mais do que preciso depois, quando tento mantê-lo.
Eu gosto de evitar a verbosidade, mas quando tornar o código muito mais fácil de entender, irei pela verbosidade.
Considerar:
String name = firstName;
if (middleName != null) {
name += " " + middleName;
}
name += " " + lastName;
Agora, isso é um pouco detalhado, mas acho muito mais legível do que:
String name = firstName + (middleName == null ? "" : " " + middleName)
+ " " + lastName;
ou:
String name = firstName;
name += (middleName == null ? "" : " " + middleName);
name += " " + lastName;
Parece apenas compactar informações demais em pouco espaço, sem deixar claro o que está acontecendo. Toda vez que vejo o operador ternário sendo usado, sempre encontro uma alternativa que parecia muito mais fácil de ler ... então, essa é uma opinião extremamente subjetiva. Portanto, se você e seus colegas acham o ternário muito legível, siga em frente.