Я работаю над проектом, который требует от меня фильтрации через длинный список контактов по имени на основе запроса, введенного пользователем. Пользователь может вводить и удалять символы, пока я все еще фильтрую список. Например, я мог бы иметь список, содержащий 5000 контактов:Инкрементная фильтрация списка в Java
FirstName1 LastName1
FirstName2 LastName2
...
FirstName5000 LastName5000
Пользователь имеет форму, где он/она может ввести критерии поиска и список должен сжиматься, чтобы показать только те контакты, которые соответствуют критериям поиска. Вот проблема у меня есть, если пользователь вводит сказать
J
я должен фильтровать список и показывать только контакты, чьи первое имя или фамилия начинается с «J». Однако пользователь может затем ввести другой символ или удалить символы, и в этом случае мне нужно перезапустить фильтрацию списка. Конечно, проблема заключается в том, что я хочу сделать это эффективным образом и не дожидаться, пока фильтрация будет выполнена с буквой «J», прежде чем я начну фильтровать новые критерии. Любые идеи/рекомендации?
Какое у вас (мобильное или сетевое)? –
вы могли бы по существу использовать задачи, которые обновляют очередь уже отфильтрованных результатов, а затем просто уточняют на основе этих (в то время как ваш «первичный искатель» помещает только новые в очередь на основе последнего запроса) – Rogue
@ShlomiHaver Мобильный. Android –