Перепроверил несколько раз, все работает.
Не проходит по 2му условию.
package com.javarush.task.task07.task0716;
import java.util.ArrayList;
/*
1. Программа не должна считывать данные с клавиатуры.
2. Метод fix должен удалять из списка строк все слова, содержащие букву "р". Исключение: слова содержащие и букву "р" и букву "л" - их нужно оставить.
3. Метод fix должен удваивать слова, содержащие букву "л" (добавлять еще один элемент с этим словом). Исключение: слова содержащие и букву "л" и букву "р" - их не нужно удваивать.
4. Метод fix не должен ничего делать со словами, содержащими и букву "л" и букву "р".
5. Метод fix не должен ничего делать со словами, которые не содержат ни букву "л", ни букву "р".
*/
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) {
//напишите тут ваш код
for (int i = 0; i < strings.size();) {
if (strings.get(i).contains("р") && !strings.get(i).contains("л")){
strings.remove(i);
}
if (strings.get(i).contains("л") && !strings.get(i).contains("р")){
strings.add(i+1, strings.get(i));
i+=2;
}
else
i++;
}
return strings;
}
}