如何在 super(...) 中创建一个数组列表

how to create an arraylist within super(...)

A parent class:

public abstract class Gate implements Logic{
  private List<Wire> inputs;
  private Wire output;
  private String name;

  public Gate(String name, List<Wire> ins, Wire out){
  }

A child class:

public class GateNot extends Gate{
  public GateNot(Wire input, Wire output){  

    super("Not",new ArrayList(input) ,output);//this is apparently incorrect.

  }

GateNot 的构造函数中的参数与 parent class 中的参数不同。我想创建一个数组列表并将输入传递给这个数组列表,这样 super(...) 就可以工作了。我如何在 super(..) 中创建这个数组列表?如果 arraylist 在这里不起作用,我可以用这个 super 做什么?

嗯,你只有一个输入。所以..

public class GateNot extends Gate {
    public GateNot(Wire input, Wire output) {
        super("Not", new ArrayList<Wire>(Arrays.asList(input)), output);
    }
}

编辑: 我意识到你有一个 List<> 而不是 ArrayList<> 所以我们可以将其简化为:

public class GateNot extends Gate {
    public GateNot(Wire input, Wire output) {
        super("Not", Arrays.asList(input), output);
    }
}