Ich habe einige JMockit-Beispiele gelesen und diesen Code gefunden:
final List<OrderItem> actualItems = new ArrayList<~>();
Was bedeutet die Tilde im generischen Bezeichner? Ich weiß, dass es der unäre bitweise NICHT-Operator ist, aber ich sehe hier keinen Operanden.
Außerdem habe ich versucht, es zu kompilieren und habe einen Fehler erhalten. Vermisse ich nur etwas?
Wenn es keine Tilde gäbe, würde ich sagen, der Code war bereits Java 7. Java 7 erlaubt dem Diamond-Operator, also ist / ist dies legaler Java-Code:
(aber - keine Tilde mit dieser Syntax)
quelle
In IntelliJ IDEA ist das
~
hier:bedeutet
String
, das ist das gleiche wie in der Erklärung auf der linken Seite.quelle
Ich denke, das ist eine Abkürzung für den Typ, in diesem Fall OrderItem .
quelle