问:删除列表中存储的某些元素,而其他列表中存在索引?例如。列表 1 有 a、b、c、d、e 和列表 2 有 0,2 那么 a 和 c 应该被删除。
我已经完成了这个,不知道这是多么有效\无效
public class RemoveByIndexFromOtherList {
public static void main(String[] args) {
List<String> lOriginal = new ArrayList<String>();
lOriginal.add("a");
lOriginal.add("b");
lOriginal.add("c");
lOriginal.add("d");
lOriginal.add("e");
List<Integer> indexes = new ArrayList<Integer>();
indexes.add(0);
indexes.add(2);
List<String> elemToRemove = new ArrayList<String>();
for (Integer index : indexes) {
String b = lOriginal.get(index.intValue());
elemToRemove.add(b);
}
for (String s : lOriginal) {
if (elemToRemove.contains(s)) {}
else {
System.out.println(s);
}
}
}
}
请提出建议,如何将其改进到相当好的有效水平