2013-04-03 103 views
3

我想知道是否可以使用if語句檢查JList(或JList模型)是否有特定的值。檢查JList是否有特定的值

我想使用list.setSelectedValue()來突出顯示當前值,但如果該值不在JList中,則會引發錯誤,因此我想使用if來檢查它是否在JList中。

感謝

回答

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); 
5

假設你正在使用您的JList一個DefaultListModel可以使用contains方法是這樣的:

DefaultListModel model = (DefaultListModel) list.getModel; 
model.contains(theObject); 
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; 
    } 
相關問題