Was ist ein Diamant-Operator (diamond operator)?v.7.0

Der Diamant-Operator vereinfacht die Schreibweise bei der Deklaration bevorzugt geschachtelter generischer Typen, indem er diese verkürzt.

Als Beispiel dient eine ArrayList, die HashMap-Objekte speichert, die wiederum Strings mit Point-Objekten verbindet. Die Schreibweise bis Java 6 hatte bei der Deklaration wie folgt zu erfolgen:

List<HashMap<String, Point>> list = new ArrayList<HashMap<String, Point>>();

Die neue Schreibweise bei Nutzung des Diamant-Operators sieht folgendermaßen aus:

List<HashMap<String, Point>> list = new ArrayList<>();

Der Diamant-Operator, so genannt wegen des Aussehens der beiden leeren spitzen Klammern, ersetzt hier bei der Deklaration der Liste den Typparameter HashMap<String, Point>. Dies ist durch die sog. type inference möglich, bei der der Compiler den Typ aus dem Zusammenhang ableitet. Dies ist aber auch zwingend erforderlich. Zudem sollte darauf geachtet werden, dass die Lesbarkeit des Codes nicht unnötig leidet.
Darüber hinaus unterliegt der Einsatz des Diamant-Operators jedoch einigen Ausschlussregeln:

Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.