我遇到了一些新的东西,我真的很难理解.这就是我所做的,它完美无缺......
Vector<String[]> v = new Vector<String[]>();
v.add(s);
String[][] s1 = new String[v.size][]
v.toArray(s1);
Run Code Online (Sandbox Code Playgroud)
我的问题是它是如何工作的,即使方法toArray()只采用一维数组作为参数..?我对java编程不太老,所以寻求解释..
提前致谢..
Java 中只有一个真正的一维数组 - 看起来你有一个多维数组,它实际上只是一个数组数组.
因此,如果我们忽略String []本身是一个数组,并将它替换为StringArray无处不在的事实,我们得到这样的代码:
Vector<StringArray> v = new Vector<StringArray>();
v.add(s);
StringArray[] s1 = new StringArray[v.size()];
v.toArray(s1);
Run Code Online (Sandbox Code Playgroud)
现在看起来不那么奇怪吧?s1是一个字符串数组的数组,v是一个字符串数组的向量.v.toArray()将一个字符串数组数组作为参数,因此我们可以使用它s1作为参数.