package com.javarush.task.task07.task0716;

import java.util.ArrayList;
import java.util.ListIterator;

/*
Р или Л
*/

public class Solution {
    public static void main(String[] args) {
        ArrayList<String> strings = new ArrayList<>();
        strings.add("роза");
        strings.add("лоза");
        strings.add("лира");
        strings = fix(strings);

        for (String string : strings) {
            System.out.println(string);
        }
    }

    public static ArrayList<String> fix(ArrayList<String> strings) {
        ListIterator<String> iterator = strings.listIterator();
        while (iterator.hasNext()) {
            if (iterator.next().indexOf('л') != -1 && iterator.next().indexOf('р') == -1) {
                iterator.add(iterator.next());
                System.out.println(iterator.next());
            }
            if (iterator.next().indexOf('р') != -1 && iterator.next().indexOf('л') == -1) {
                iterator.remove();
                System.out.println(iterator.next());
            }
        }
        return strings;
    }
}
Пытаюсь использовать итератор, не могу понять что не так. Выдает ошибку Exception in thread "main" java.util.NoSuchElementException at java.base/java.util.ArrayList$Itr.next(ArrayList.java:999) at com.javarush.task.task07.task0716.Solution.fix(Solution.java:27) at com.javarush.task.task07.task0716.Solution.main(Solution.java:17)