第1个回答 2010-05-11
java中定义的数组长度可以由内容决定的
String [][] str={{"1","2"},{"3","4"}};
但我觉得这可能不能帮你解决问题,建议使用List<HashMap> list,如下面的例子可以很方便的存取二维数组内容
public static void main(String[] args) {
String [][] str={{"1","2"},{"3","4"}};
List<HashMap> list=new ArrayList<HashMap>();
for (int i = 0; i < str.length; i++) {
HashMap hm=new HashMap();
for (int j = 0; j < str[i].length; j++) {
hm.put("one",str[i][j]);
}
list.add(hm);
}
}
第2个回答 2010-05-11
首先你要了解什么是数组,数组在内存中是一段连续的空间,这样的优点就是元素的访问速度快,要长度可变的话你可以用链表,java 自带有一个双向链表 LinkedList ,也有一个ArrayList 这个就不能算是链表了.当然你可以自己写一个结构来实现,这个也不难,有点像链式哈希表,基本上用链表改一下就成了。
不过话说回来,我用java这么久还真的没有数组在用的时候不能确定它长度的, 正如楼上所说“int a=0,b=0;
Object[][] c=new Object[a][b];”大部份我们都是这样来声明数组的,数组在我们在声明的时候基本上要多大我们是知道的。