java - 如何一般传递 list<object> 参数

标签 java

这是我的通用构造函数

public TreeContainer(Class<T> type, Object parentPID, List<Object> childrensPID) throws IllegalArgumentException {
    super(type);
    this.parentPID = parentPID;
    this.childrensPID = childrensPID;
}

这是我的 bean(带有 getter setter)

public class DirectoryBean implements Serializable {
      private long id;
      private String name;
      private DirectoryBean parent;
      private List<DirectoryBean> childrens;    
}

我创建一个像这样的新树容器

TreeContainer<DirectoryBean> treeContainer = new TreeContainer<DirectoryBean>(DirectoryBean.class,"parent", "childrens" );

但是“childrens”参数是非法的,在这种情况下我该如何传递列表参数

最佳答案

你的构造函数期望这样

List<Object> childrensPID

但是您正在传递一个字符串“childrens”。 您可以通过将其放入列表中来绕过它。

List<Object> childrens = new ArrayList<Object>();
childrens.add("childrens");
new TreeContainer<DirectoryBean>(DirectoryBean.class,"parent", childrens );

关于java - 如何一般传递 list<object> 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10193918/

相关文章:

Java服务器数据存储的最佳策略是什么?

java - 在 Embedded Derby 中启用用户身份验证

java - Spring @Transactional TransactionRequiredException 或 RollbackException

java - 静态工厂方法如何返回一个新实例?

java - 是否可以在 Nvidia 3D Vision 硬件上运行 Java3D 应用程序?

java - 带有 Gradle 插件的 Findbugs 在 Java 9 中不起作用

java - CDI 可以减少到 Java SE 吗?

java - JEP 145 发生了什么(由于编译代码重用,jvm 启动更快)?

Java:如何从接口(interface)名称调用实现的方法

Java NIO 服务器和 Python asyncore 客户端