Avatar ·

Effizienz der Double Brace Initialization in Java: Sollte man sie verwenden?

Hallo zusammen! Ich bin ein Java-Anfänger und bin kürzlich auf eine interessante Syntax gestoßen — die Double Brace Initialization. Sie sieht sehr prägnant aus, besonders wenn man schnell eine Collection erstellen und befüllen möchte.\n\nHier ist ein Beispiel, das ich oft in Lehrbeispielen sehe:\n\n```java\nMap map = new HashMap<>() {{\n put("key1", "value1");\n put("key2", "value2");\n put("key3", "value3");\n}};\n```\n\nEinerseits ist das sehr praktisch — man muss keinen separaten Codeblock erstellen, keine Variable deklarieren und sie dann mit `put()` befüllen. Alles wird in einem Ausdruck erledigt. Aber mich quält die Frage: Wie effizient ist das? Denn hier wird eine anonyme innere Klasse erstellt, was zusätzlichen Overhead bedeutet.\n\nIch habe auf Stack Overflow gelesen, dass dieser Ansatz möglicherweise