Как я могу найти элемент по свойству в JList - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть класс элементов, и я храню элементы в JList, я хотел бы искать элемент в JList по имени элемента.У меня есть JButton с именем search, который реализует следующий код, а переменная nameToSearch получает строку, записанную в поле JText,

  ArrayList<Item> backUp = new ArrayList<>();
            ArrayList<Item> itemsFound = new ArrayList<>();

            for (int i = 0; i < listModel.getSize(); i++) {
                backUp.add(listModel.getElementAt(i));

                if (listModel.getElementAt(i).getName().compareToIgnoreCase(nameToSearch) >= 0) {
                    Item foundItem = listModel.getElementAt(i);
                    itemsFound.add(foundItem);
                }
            }
                //clear the listModel to display the found items
                listModel.removeAllElements();
                //add the found items to the listModel to be displayed
                for (Item s: itemsFound) {
                    listModel.addElement(s);}

Я имел в виду получить все элементы в резервном массиве arrayList, чтобы позже показать все элементы, оператор if проверяет, что item.getName () - это то, что ищет пользователь, и он добавляет этот элемент в ArrayList itemfound, предполагается, что элемент найден в arrayList, затем я удаляю все элементы изdefaultListModel listmodel, а затем добавить найденные элементы в defaultListModel listModel, чтобы найденные элементы были единственными в JList на данный момент.Но это не работает, ничего не делает.Любое предложение о том, как это сделать, приветствуется

...