Если правильно понимаю, то после удаления элемента содержащего букву Р, происходит сдвиг и последний элемент не проверяется и поэтому не удваивается.
strings.add(i, strings.get(i)); - эта строчка лишняя.
Удваиваю по принципу
else if(strings.get(i).contains("л")){
strings.add(i, strings.get(i));
но не срабатфвает из за сдвига.
Подтолкните к решению плизpackage com.javarush.task.task07.task0716;
import java.util.ArrayList;
/*
Р или Л
*/
public class Solution {
public static void main(String[] args) {
ArrayList<String> strings = new ArrayList<String>();
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(); i++) {
if(strings.get(i).contains("р")&&strings.get(i).contains("л")) {
// System.out.println("1");
}
else if(strings.get(i).contains("р")){
strings.remove(i);
strings.add(i, strings.get(i));
// System.out.println("2");
}
else if(strings.get(i).contains("л")){
// System.out.println("3");
}
}
return strings;
}
}