У меня есть простой список (recyclerView), где у каждого элемента списка есть флажок. Все элементы, которые были проверены, должны быть удалены с помощью этого кода:ArrayList.remove (i) не удаляет все объекты, как это должно быть
for(int i = 0; i<shopListItems.size(); i++) {
if(shopListItems.get(i).isBought == 1) {
shopListItems.remove(i);
}
}
Но по какой-то причине он не разбирается. Если проверено 10 элементов, то только 7 из них будут удалены, и я должен снова запустить код, чтобы удалить остальные.
кода кажется нормально, но я действительно не понимаю, почему это Dont удалить все отмеченное или все, что (isBought == 1)
Если вы удалите элемент 0, старый элемент 1 переместится в положение 0, но ваш цикл пропустит его, продолжая в позиции 1. –