在下面的代码中,x.test()返回[1,2].
所以y = [1,2]。
然而f([1,2])打印1,但f(y)打印2。
我该怎么写f(y)才能打印出来1?
反常地f(z)打印1,即使z = y。
def f = { Object... args -> println args.size(); };
class Test { Object[] test() { return [1,2]; } }
def x = new Test();
def y = x.test();
def z = [1,2];
f([1,2]); // 1
f(y); // 2
f(z); // 1