动态二维数组如何定义

动态二维数组怎么定义?
我想定义一个二维数组,动态的往里填加数据,该如何定义呢?谢谢

------解决方案--------------------
import java.io.IOException;
import java.util.*;

public class Test
{
public static void main(String[] args)
{
ArrayList <String> list = new ArrayList <String> ();
System.out.println( "Input numbers till the end: ");
while (true)
{
byte buf[] = new byte[64];
int size;

try
{
size = System.in.read(buf);

if (size < 0)
{
break;
}

String str = new String(buf, 0, size);

if (str.substring(0, 3).equals( "end "))
{
break;
}
list.add(str);
}
catch (IOException e)
{
e.printStackTrace();
}
}

for (int i = 0; i < list.size(); i++)
{
System.out.print((String) list.get(i));
}
}
}
------解决方案--------------------
ArrayList <String> list = new ArrayList <String> ();
这句是什么意思,编译报错
------解决方案--------------------
jdk.1.5的,如果是以下版本就把 <String> 去掉
------解决方案--------------------
jdk版本问题!你装个1.6.就OK了
------解决方案--------------------
ArrayList <String> list = new ArrayList <String> ();
<String> 是添加到ArrayList里的对象类型