Generischer Array-Erstellungsfehler: Alternativen werden untersucht
Der Versuch, ein Array einer generischen Klasse in Java zu erstellen, wie in der Frage veranschaulicht, wird dies tun unweigerlich auf einen Fehler stoßen. Java unterstützt diese Funktion nicht, sodass alternative Ansätze erforderlich sind.
Erwägen Sie die Verwendung einer Sammlung
Anstelle eines Arrays kann die Verwendung einer Sammlung diese Einschränkung effektiv beheben. Eine ArrayList kann beispielsweise eine Liste von Objekten speichern und bietet so Flexibilität bei der Verwaltung der Daten.
Eine weitere Option: Hilfsklasse
Eine weitere praktikable Lösung besteht darin, eine Hilfsklasse zu erstellen Klasse. Beispielsweise könnte eine Klasse mit dem Namen MyObjectArrayList ArrayList
Das Verbot verstehen
Das Verbot generischer Arrays in Java ist tief im Design der Sprache verwurzelt . Das folgende Beispiel veranschaulicht ein mögliches Szenario, das diese Einschränkung rechtfertigt:
<code class="java">List<String>[] lsa = new List<String>[10]; // illegal Object[] oa = lsa; // OK because List<String> is a subtype of Object List<Integer> li = new ArrayList<Integer>(); li.add(new Integer(3)); oa[0] = li; String s = lsa[0].get(0);</code>
Ohne diese Einschränkung könnte solcher Code zu unerwartetem Verhalten führen, z. B. der Zuweisung einer Liste von Ganzzahlen zu einem Array, das für Zeichenfolgen gedacht ist.
Das obige ist der detaillierte Inhalt vonWarum können Sie in Java keine generischen Arrays erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!