Как отсортировать список по текущему зарегистрированному пользователю вверху

#android #sorting #collections

#Android #сортировка #Коллекции

Вопрос:

У меня есть список, мне нужно показать текущего зарегистрированного пользователя вверху списка. Как я могу это показать? Я использую коллекции.метод сортировки, но он сравнивает только строковые значения по идентификатору пользователя или имени пользователя и сортирует в порядке ASC или DSC.

 Collections.sort(response.getData(), new Comparator<UpcomingParticipantsData>(){
                        public int compare(UpcomingParticipantsData obj1, UpcomingParticipantsData obj2) {
                            // ## Ascending order
                            return obj1.getUid().compareToIgnoreCase(obj2.getUid()); // To compare string values
                            // return Integer.valueOf(obj1.empId).compareTo(Integer.valueOf(obj2.empId)); // To compare integer values

                            // ## Descending order
                            // return obj2.firstName.compareToIgnoreCase(obj1.firstName); // To compare string values
                            // return Integer.valueOf(obj2.empId).compareTo(Integer.valueOf(obj1.empId)); // To compare integer values
                        }
                    });
 

Комментарии:

1. Есть ли UpcomingParticipantsData свойство, которое будет указывать дату и время входа в систему? Добавьте UpcomingParticipantsData класс с вопросом.

2. У @ADM UpcomingParticipantsData есть только 2 параметра uid и username Это не зависит от входа в систему, мне нужно поместить пользователя вверху и оставить пользователей из 1-го индекса arraylist, после получения ответа от сервера.

3. Это не сортировка. Вам просто нужно получить текущего пользователя и вставить его с нулевым индексом, а также сначала удалить его, если список уже содержит его.

4. @ADM Хорошо, вы можете помочь мне добиться этого? и возможно ли это без цикла for?