Добрый день!
А для чего мы в ветвлении ставим
i--; и i += 2; ?
Как я понял, чтобы если у нас слово с буквой "р", но в ней нет "л", то у нас i уменьшается на 1 и снова прогоняется по элементу с этим индексом, но уже новому, а если +=2, то копируется и вставляется элемент с "л" и итерации сразу перекидывает через оба этих элемента, чтобы не проверять повторно?
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.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++){
String x = strings.get(i);
if (x.contains("р") && x.contains("л")){
continue;}
else if (x.contains("р") && !x.contains("л")){
strings.remove(x);
i--;
}
else if (x.contains("л")){
strings.add(i,x);
i+=1;
}
}
return strings;
}
}