使用此示例:
public class ExampleData {
private List<String> directories;
private String exampleString;
public ExampleData (String[] directories, String exampleString) {
this.directories = new ArrayList<String>(Arrays.<String> asList(directories));
this.exampleString= exampleString;
}
}
调用构造函数:
public class Test{
private String[] directories={"/tmp/17","/tmp/18"};
private ExampleData eD =
new ExampleData(directories, "Test");
}
为什么我可以使用前面的代码而不是下一个代码调用其构造函数:
public class Test{
private ExampleData eD =
new ExampleData({"/tmp/17","/tmp/18"}, "Test");
}
答案 0 :(得分:0)
因为,您需要首先创建/ tmp / 17和/ tmp / 18,而不是将它们放入列表或其他内容。他们的构造函数需要单独调用。
而且,idk你用什么语言编码但是({“/ tmp / 17”,“/ tmp / 18”},.....)这似乎是错误的。我的意思是用括号括起来...
答案 1 :(得分:0)
Java只是不接受这种语法。你可以写
private ExampleData eD =
new ExampleData(new String[]{"/tmp/17", "/tmp/18"}, "Test");