【发布时间】:2013-02-27 16:31:34
【问题描述】:
我做了空表:
String columnNames[] = {"br", "artikal", "cena", "kolicina","ukupno" };
String dataValues[][] =new String[10][5];
DefaultTableModel tableModel=new DefaultTableModel(dataValues, columnNames);
我想按顺序从第一行到最后一个循环填充一列,如果条件:
if ((((JButton)e.getSource()).getText()).equals(name.getName())){
for (int i=0;i<10;i++){
String products= (String) bill.tableModel.getValueAt(i, 1);
String p=Double.toString(name.getPrice());
if(products.equals(""))
bill.tableModel.setValueAt(name.getName(),i, 1);
bill.tableModel.setValueAt(p,i, 2);
break;
}
}
当我单击按钮时,没有显示任何内容,但是当我删除 if 条件 if (products.equals("")) 时它正在工作,而是填充空列中的单元格,它将文本再次设置为列中的第一个单元格。
我试过if ( dataValues[i][1].equals("null")) 和if (products.equals("null")) 什么也没显示。
当我把System.out.print((String) bill.tableModel.getValueAt(0, 1)) 在控制台上显示“null”。
还有其他方法可以填充列中的单元格吗?
【问题讨论】:
-
如果
products是null,当你尝试使用它时它会抛出一个NPE。 -
java.lang.NullPointerException -
if ((((JButton)e.getSource()).getText()).equals(name.getName())){是实现动作监听器逻辑的一种相当奇怪的方式... -
没错。所以...检查
null,如果这是预期的情况。if (products == null) -
谢谢!成功了,谢谢!!!!!!
标签: java swing if-statement jtable jbutton