Prawie nigdy nie używam operatora trójskładnikowego, ponieważ zawsze to robię używam, zawsze sprawia, że myślę o wiele więcej niż później, kiedy próbuję go utrzymać.
Lubię unikać gadatliwości, ale kiedy znacznie ułatwi to odczytanie kodu, zdecyduję się na szczegółowość.
Rozważać:
String name = firstName;
if (middleName != null) {
name += " " + middleName;
}
name += " " + lastName;
To trochę rozwlekłe, ale uważam, że jest o wiele bardziej czytelne niż:
String name = firstName + (middleName == null ? "" : " " + middleName)
+ " " + lastName;
Lub:
String name = firstName;
name += (middleName == null ? "" : " " + middleName);
name += " " + lastName;
Po prostu wydaje się, że kompresuje zbyt dużo informacji w zbyt małej przestrzeni, nie wyjaśniając, co się dzieje. Za każdym razem, gdy widziałem używany operator trójskładnikowy, zawsze znajdowałem alternatywę, która wydawała się znacznie łatwiejsza do odczytania ... z drugiej strony jest to niezwykle subiektywna opinia, więc jeśli ty i twoi koledzy uznacie trójskładnik za bardzo czytelny, idźcie na to.