我有一些问题,我似乎无法开展工作。我试图用for循环中的向量填充数组(因为向量的大小会随着时间的推移而变化)。 我在一个名为 StudentFactory 的类中创建了这样的矢量:
private Vector<StudentImpl> theListOfStudents = new Vector<StudentImpl>();
并将其传递给名为 table 的类,如下所示:
public Vector<StudentImpl> table() {
return theListOfStudents;
}
然后在表类中,我尝试像这样填充2D数组:
theFactory = StudentFactory.getInstance();
// Create columns names
String columnNames[] = { "Name", "Address"};
Vector<StudentImpl> temp;
temp = theFactory.table();
// Create some data
String [][] data;
for(int i = 0; i < temp.size(); i++)
{
data[i][0] = temp.get(i).getTheName();
data[i][1] = temp.get(i).getTheAddress();
}
// Create a new table instance
table = new JTable(data, columnNames);
它一直告诉我将String [][] data;
设置为null但是当我这样做时我得到空引用指针。这里的任何帮助都非常感谢
答案 0 :(得分:1)
它一直告诉我设置String [] []数据;为空...
它并没有真正告诉你,而是数据尚未初始化。
根据Vector的大小将数据设置为所需的大小:
String[][] data = new String[temp.size()][2];