Czytałem kilka przykładów JMockit i znalazłem ten kod:
final List<OrderItem> actualItems = new ArrayList<~>();
Co oznacza tylda w identyfikatorze rodzajowym? Wiem, że to jednoargumentowy operator bitowy NOT, ale nie widzę tutaj operandu.
Próbowałem też go skompilować i wyskoczył błąd. Czy po prostu czegoś brakuje?
Gdyby nie było tyldy, powiedziałbym, że kod byłby już Java 7. Java 7 pozwala operatorowi diamentu, więc jest / będzie legalny kod Javy:
(ale - bez tyldy z tą składnią)
źródło
W IntelliJ IDEA
~
tutaj:oznacza
String
to samo, co w deklaracji po lewej stronie.źródło
Myślę, że jest to skrótowe oznaczenie dowolnego typu, w tym przypadku OrderItem .
źródło