在处理中,我定义了以下类:
class SomeClass {
SomeClass(int[] someArray) {
println(someArray);
}
}
现在我想创建该类的一个实例,但是我无法将数组传递给构造函数:
SomeClass myVar = new SomeClass({
12, 10
});
但这总是给我一个错误“意外令牌:{”。因此,显然“动态”定义数组是行不通的。
但是,这将起作用:
int[] dummy = {12, 10};
SomeClass myVar = new SomeClass(dummy);
但是我发现在对象之外声明这个数组是相当愚蠢的,因为这会在创建多个对象时导致各种麻烦:
int[] dummy = {12, 10};
SomeClass myVar = new SomeClass(dummy);
dummy = {0, 100};
SomeClass myVar2 = new SomeClass(dummy);
类的两个实例现在都引用了同一个数组{0, 100}
,这当然不是我打算做的。
所以我的问题是:如何正确地将数组传递给类的构造函数,而不必事先声明数组?甚至可能吗?
谢谢您的回答!