DefaultTablemodel 如果行具有特定值则删除行 JAVA
DefaultTablemodel delete rows if the row has a specific value JAVA
如果第一行 String "Windows" 我想删除行,但是效果不佳,如果 String 值为 "Windows" 它会删除行
我的代码。任何帮助将不胜感激。 :)
for (int i = 0; i < model.getRowCount(); i++) {
if ((String) model.getValueAt(i, 0) != "Windows") {
model.removeRow(i);
}
}
要比较字符串,您可以直接使用 equals
请记住,删除行会减小模型的大小,您可以控制在删除行或不删除行时减去迭代次数,而不是进行所有比较
for (int i = 0; i < model.getRowCount(); i++) {
if (!model.getValueAt(i, 0).equals("Windows")){
model.removeRow(i);
i-=1; //
}
你可以这样使用
if (!model.getValueAt(i, 0).equals("") && model.getValueAt(i, 0).equalsIgnoreCase("Windows"))
{
model.removeRow(i);
}
对于字符串比较,我们总是倾向于使用等于 method.If 你希望你可以进行空检查,例如 model.getValueAt(i, 0)!=null.
它有效,但我有很多行它只删除一行,如果值不等于我想删除所有值,我必须单击一棵树 "Windows" Picture
如果第一行 String "Windows" 我想删除行,但是效果不佳,如果 String 值为 "Windows" 它会删除行
我的代码。任何帮助将不胜感激。 :)
for (int i = 0; i < model.getRowCount(); i++) {
if ((String) model.getValueAt(i, 0) != "Windows") {
model.removeRow(i);
}
}
要比较字符串,您可以直接使用 equals
请记住,删除行会减小模型的大小,您可以控制在删除行或不删除行时减去迭代次数,而不是进行所有比较
for (int i = 0; i < model.getRowCount(); i++) {
if (!model.getValueAt(i, 0).equals("Windows")){
model.removeRow(i);
i-=1; //
}
你可以这样使用
if (!model.getValueAt(i, 0).equals("") && model.getValueAt(i, 0).equalsIgnoreCase("Windows"))
{
model.removeRow(i);
}
对于字符串比较,我们总是倾向于使用等于 method.If 你希望你可以进行空检查,例如 model.getValueAt(i, 0)!=null.
它有效,但我有很多行它只删除一行,如果值不等于我想删除所有值,我必须单击一棵树 "Windows" Picture