【发布时间】:2017-10-28 14:48:26
【问题描述】:
给定一个名为 ThisClass 的类,它只包含这个:
public static void main(String[][] args) {
System.out.println(args[0][1]);
}
public static void main(String[] args) {
ThisClass app = new ThisClass();
String[][] newargs = {args};
app.main(newargs);
}
如果你编译它然后用java ThisClass a b c 运行它,它会打印:
b
...所以它采用第一个数组并自动包装它以适应二维数组?这很奇怪。有人可以分解这里发生的事情吗?我很确定我错过了一些东西。
【问题讨论】:
-
在java中真的没有任何'2d'数组,只有数组的数组。没有自动包装,您获取了一个数组,然后使用数组文字语法将其放入另一个数组中。因此,您制作了一个数组数组。
标签: java