给定变量:
Object[] ab = new Object[] { "a", "b" };
Object[] cd = new Object[] { "c", "d" };
调用以下方法时:
public static void m(Object... objects) {
System.out.println(Arrays.asList(objects));
}
使用:
m(ab, cd);
我得到了预期的输出:
[[Ljava.lang.Object;@3e25a5, [Ljava.lang.Object;@19821f]
但是使用时:
m(ab);
我得到:
[a, b]
自strings <- ab
与非strings[0] <- ab
。
如何强制编译器将ab
数组作为数组的第一个值strings
,然后输出:
[Ljava.lang.Object;@3e25a5
?