Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 26.03.2014
Сообщений: 61

Удаление из коллекции

18.04.2017, 12:31. Показов 1813. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Драсти! Проблемка такая. Есть два списка. Один стринговый на 50 элементов, а второй инт на 39. Суть вот в чем. В интовом листе содержаться номера элементов которые нужно удалить из стрингового листа. Пробовал так:
Java
1
2
3
4
5
6
7
8
9
Iterator<String>it=stringList.iterator();
    while(it.hasNext()){
       String str = it.next();
       for(int i: intList){
         if(stringList.indexOf(str)==i){
            it.remove();
          }
       }
     }
удалило все элементы кроме одного.
Java
1
2
3
for(int i: intList){ 
    stringList.remove(stringList.get(i))
}
Тоже не работает. Подкиньте идейку как провернуть эту затею?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.04.2017, 12:31
Ответы с готовыми решениями:

Удаление из коллекции
Добрый день. Есть коллекция accounts, из неё нужно убрать один элемент, переданный параметром функции. Пытаюсь найти индекс элемента и...

Удаление элемента из коллекции
Есть задание : пользователь осуществляет ввод строк, которые добавляются в коллекцию. Строка не может быть добавлена в коллекцию если в ней...

Удаление элементов коллекции
Привет всем)помогите пожалуйста разобраться почему не работает код: public static void main(String args) { ...

8
9 / 9 / 3
Регистрация: 20.04.2016
Сообщений: 33
18.04.2017, 13:20
При условии что все String-и разные:
Java
1
2
3
4
List<String> toRemove = numbers.stream()
                               .map(index -> words.get(index))
                               .collect(Collectors.toList());
words.removeAll(toRemove);
1
1 / 1 / 0
Регистрация: 26.03.2014
Сообщений: 61
18.04.2017, 13:31  [ТС]
Цитата Сообщение от Ivan_FX Посмотреть сообщение
При условии что все String-и разные:
Java
1
2
3
4
List<String> toRemove = numbers.stream()
                                         .map(index -> words.get(index))
                                         .collect(Collectors.toList());
words.removeAll(toRemove);
Вопрос:что такое переменная index?
0
51 / 51 / 23
Регистрация: 05.04.2010
Сообщений: 127
18.04.2017, 13:33
когда вы удаляете элемент остальные смещаются, в этом случае надо удалять с конца
как вариант отсортировать массив интов в обратном порядке и по очереди их все удалить.
Java
1
2
3
4
5
6
7
8
9
10
public static void main(String[] args) {
    Collections.sort(intList, new Comparator<Integer>() {
        public int compare(Integer o1, Integer o2) {
            return o2.compareTo(o1);
        }
    });
    for(int i:intList){
        stringList.remove(i);
    }
}
1
9 / 9 / 3
Регистрация: 20.04.2016
Сообщений: 33
18.04.2017, 13:35
Цитата Сообщение от n1ce1991 Посмотреть сообщение
Вопрос:что такое переменная index?
номер из твоёго листа с номерами
0
528 / 263 / 70
Регистрация: 11.12.2016
Сообщений: 1,223
18.04.2017, 13:50
Ivan_FX, Если бы вы еще и больше прокоментировали то помогли бы и мне.)))

Насколько я понимаю, words - искомый список, формируемый удалением ненужных объектов списка toRemove.
А вот что такое numbers, - формируемый объект из списка инт? А collect?
Пока формулировал вопрос - почти понял)
0
9 / 9 / 3
Регистрация: 20.04.2016
Сообщений: 33
18.04.2017, 13:58
твой intList = numbers
твой stringList = words
0
1 / 1 / 0
Регистрация: 26.03.2014
Сообщений: 61
18.04.2017, 16:42  [ТС]
Цитата Сообщение от Ivan_FX Посмотреть сообщение
твой intList = numbers
твой stringList = words
Я понял, спасибо!
0
9 / 9 / 3
Регистрация: 20.04.2016
Сообщений: 33
19.04.2017, 12:37
попробyй вот этот метод он лучше работает:
Java
1
2
3
4
5
numbers.stream()
       .filter(index -> index < words.size())
       .map(index -> words.get(index))
       .sorted()
       .forEachOrdered(number -> words.remove(number));
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.04.2017, 12:37
Помогаю со студенческими работами здесь

Удаление элемента из Set-коллекции
Проблема вот в чем, нужно из cats удалить одного &quot;кота&quot; Что я делаю не так? public class Solution { public static void...

Удаление ключей в коллекции мап
Здравствуйте,проблема следующая : создается коллекция Treemap(который уже по дефолту сортирует ключи),т.е. такого плана ...

Удаление элемента коллекции в коллекции коллекции )
Есть коллекция (к1), в ней элементы + коллекция (к2), Так вот в к2 тоже есть элементы, и из к2 надо удалить элемент. к1 отображается на...

Удаление коллекции объектов из коллекции
Доброго дня. Подскажите каким образом можно удалить коллекцию объектов из коллекции с помощью linq? Например, есть List&lt;int&gt;...

Получение новой коллекции путем фильтрации элементов коллекции находящихся в другой коллекции
Всем привет, нуждаюсь в помощи знатоков) Имеется вот такая иерархия если представить в JSON: { teachers: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru