Array-Initialisierer ist nicht erlaubt, hier bei der übergabe als argument zu ArrayList
Habe ich einige Model
Klassen, die ich versuche zu erklären, eine Liste mit Ihnen, aber ich bekomme Array initializer is not allowed here
. Was wäre eine einfache Arbeit um?
...
public class M1 extends Model {}
public class M2 extends Model {}
...
List<Model> mObj = new ArrayList<Model>({M1, M2}) //expression expected
...
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Java 8 nutzen Sie die Streams-API:
Vor Java 8 verwenden Sie einfach:
Für weitere Informationen zu diesem finden Sie unter:
Können Sie Arrays.asList die Rückkehr
List<Model>
und dann übergeben Sie es an den Konstruktor der ArrayList. Hinweis ordnen Sie direktList
Rückkehr vonArrays.asList
zuList<Model>
rufen Sie dann zu der Methode, wieadd()
werfenUnsupportedOperationException
weil Arrays.asList Rückkehr istAbstractList
Sollten Sie ändern
zu
weil Konstruktor der Klasse
ArrayList
nehmen könnenCollection<? extends Model>
expression expected