输出多了一个love怎么会回事?有大神知道吗?
package zh.codegym.task.task07.task0716;
import java.util.ArrayList;
public class Solution {
public static void main(String[] args) throws Exception {
ArrayList<String> list = new ArrayList<String>();
list.add("rose"); // 0
list.add("lyre"); // 1
list.add("love"); // 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 < 3; i++) {
if ( list.get(i).indexOf("r") >= 0 && list.get(i).indexOf("l") < 0) {
list.remove(i); //这里是删除含"r"不含"l"的单词
}
if ( list.get(i).indexOf("r") < 0 && list.get(i).indexOf("l") >= 0 ) {
list.add(list.get(i)); // 这里是复制含"l"不含"r"的单词
}
}
return list; //这里不应该是 lyre love love 吗?但我的output是love lyre love love
}
}