java - 作为参数传递给 ArrayList 时,此处不允许使用数组初始值设定项

标签 java

我有一些 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));


有关这方面的信息,请参阅:

关于java - 作为参数传递给 ArrayList 时,此处不允许使用数组初始值设定项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26039335/

相关文章:

java - SwipeRefreshLayout 不遵守约束

java - 将用户库添加到 Ant Builder 类路径

java - drop-and-create-tables 太容易掉落

java - 错误 500 : Insertion of data into a data base through a servlet

java - 处理 JSON 数据。无法在android中使用以下代码解析

Javacard applet 安装过程返回 "0x6A80"状态字

java - 如何在java中为每个线程分配一定数量的rdms记录进行处理

java - jcombobox 操作执行事件

java - HTTP GET 请求获取 HTML 页面代码而不是预期的 json 响应

Java让球弹跳,它留下了痕迹吗?