我想知道是否可以使用if语句检查JList(或JList模型)的特定值。
我想使用list.setSelectedValue()
突出显示当前值,但如果该值不在JList中,则会抛出错误,因此我想使用if来检查它是否在JList中。
谢谢
答案 0 :(得分:5)
假设您在JList中使用DefaultListModel,可以使用contains方法,如下所示:
DefaultListModel model = (DefaultListModel) list.getModel;
model.contains(theObject);
答案 1 :(得分:1)
您可以使用以下JList#getNextMatch()
方法:
String s = "element";//Say you want to look up for String "element "
int index = list.getNextMatch(s,0,Position.Bias.Forward);
if (index != -1)
list.setSelectedValue(s,true);
答案 2 :(得分:0)
public static boolean hasElement(Object searched, JList list) {
for (int a = 0; a < list.getModel().getSize(); a++) {
Object element = list.getModel().getElementAt(a);
if (element.equals(searched)) {
return true;
}
}
return false;
}