关于JTable中defaultModel的问题
[code=javadelRow.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
int rowcount = defaultModel.getRowCount()-1; //getRowCount 返回行数, rowcount<0 代表已经没有任何行了。
if(rowcount >= 0)
{
int[] select=table.getSelectedRows();
for(int i=0;i<select.length;i++){
defaultModel.removeRow(table.getSelectedRow());//这个地方很奇怪,不要在括号里写select[i],
//随着每条删除,索引都会变,所以会出错,但是这样输入就没错
}
defaultModel.setRowCount(rowcount+1-select.length);
table.setModel(defaultModel);
}
}
});
][/code]
这段代码是想删除table中选中行,在removeRow里我一开始写的是select[i]出错了,写成table.getSelectedRow()就没错,我知道前一种写法在循环的时候索引变了,导致找不到一部分行;不过为什么后一种写法就没有这种问题,内部是有什么转换吗?真心求解