Czytałem artykuł powiązany z historią slashdot i natknąłem się na tę małą ciekawostkę:
Weź najnowszą wersję Javy, która stara się ułatwić sprawdzanie wskaźnika null, oferując skróconą składnię do niekończących się testów wskaźników. Samo dodanie znaku zapytania do każdego wywołania metody automatycznie obejmuje test na zerowe wskaźniki, zastępując szczurzy zestaw instrukcji jeśli-to, takich jak:
public String getPostcode(Person person) { String ans= null; if (person != null) { Name nm= person.getName(); if (nm!= null) { ans= nm.getPostcode(); } } return ans }
Z tym:
public String getFirstName(Person person) { return person?.getName()?.getGivenName(); }
Przeszukałem internet (ok, spędziłem co najmniej 15 minut na googlowaniu odmian „znaku zapytania java”) i nic nie znalazłem. A więc moje pytanie: czy jest jakaś oficjalna dokumentacja na ten temat? Odkryłem, że C # ma podobny operator (operator „??”), ale chciałbym uzyskać dokumentację dla języka, w którym pracuję. Czy jest to tylko użycie operatora trójskładnikowego, nigdy wcześniej nie widziane.
Dzięki!
EDYCJA: Link do artykułu: http://infoworld.com/d/developer-world/12-programming-mistakes-avoid-292