谁能告诉我的错误在这个Java声明String[][] t=new String[15][15];
这工作得很好,如果我使用的String[][] t=new String[][];
,因为我需要声明变量t动态,因为我不知道我是多么多值会在T存储.
使用ArrayList(或可以处理任意数量对象的其他数组对象).java数组始终具有固定长度,因为将为该数组保留一些内存.
ArrayList也创建了这样的数组来存储对象.你添加更多的abjects作为数组的当前保留大小比ArrayList将创建一个新的更大的数组(如果我是正确的话,+ 50%).还有一些其他实现有点不同(例如,当阵列已满时,它们会创建一个新阵列100%的原始阵列.如果性能对您来说非常重要,那么您可以查看它.
ArrayList<ArrayList<String> t = new ArrayList<ArrayList<String>();
void fill() {
ArrayList<String> t2 = new ArrayList<String>();
t2.add("somestring");
String s = "someotherstring";
t2.add(s);
t.add(t2);
}
Run Code Online (Sandbox Code Playgroud)