Подскажите, добрые люди, что не так в коде? Розу удаляет, а вот содержащие "л" не дублирует, причем если 3 словом будет содержащее только "л" входит в бесконечный цикл и комп начинает взлетать ><
public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader bis = new BufferedReader(new InputStreamReader(System.in));

        ArrayList<String> list = new ArrayList<String>();
        list.add("роза"); //0
        list.add("лодка"); //1
        list.add("лира"); //2
        list = fix(list);

        for (String s : list) {
            System.out.println(s);
        }
    }

    public static ArrayList<String> fix(ArrayList<String> list) {
        //напишите тут ваш код
        for (int i = 0; i < list.size(); i++) {
            if (((list.get(i).indexOf("р",0)) != -1) && (((list.get(i).indexOf("л",0)) != -1))){
            }else if((list.get(i).indexOf("р", 0)) != -1){
                list.remove(list.get(i));
            }else if((list.get(i).indexOf("л", 0)) != -1){
                list.add(list.get(i));
            }
        }
        return list;
    }
}