我有一些Model类,我试图用它们声明一个列表,但是我得到Array initializer is not allowed here。一个简单的解决方法是什么?

...
public class M1 extends Model {}
public class M2 extends Model {}

...
List<Model> mObj = new ArrayList<Model>({M1, M2}) //expression expected
...

最佳答案

Java 8 中,您可以使用Streams API:

List<String> mObj = Stream.of("m1","m2","m3").collect(Collectors.toList());

Java 8之前的只需使用:
List<Model> mObj = new ArrayList<>(Arrays.asList(m1, m2, m3));

有关此信息,请参见:
  • Collectors
  • Arrays.asList
  • 07-24 09:45
    查看更多