使用迭代器來刪除呜叫,內(nèi)層循環(huán)(bb)中已使用或判斷過的元素赞枕,減少循環(huán)次數(shù)
有時(shí)內(nèi)循環(huán)中的元素只會(huì)匹配外層元素一次坛悉,如果已經(jīng)進(jìn)行過匹配了顺献,之后的對(duì)外層元素而言這個(gè)內(nèi)層元素沒有循環(huán)的意義了,所以可以將其移除減少循環(huán)次數(shù)定嗓,提高程序運(yùn)行效率
List<String> aa = new ArrayList<>();
aa.add("111");
aa.add("222");
aa.add("333");
List<String> bb = new ArrayList<>();
bb.add("111");
bb.add("111");
bb.add("222");
bb.add("222");
bb.add("333");
bb.add("333");
for (String a : aa) {
ListIterator<String> stringListIterator = bb.listIterator();
System.out.println("a:"+bb.size());
System.out.println("b:"+a);
while (stringListIterator.hasNext()) {
String next = stringListIterator.next();
System.out.println("c:"+ next);
if (a.equals(next)) {
stringListIterator.remove();
}
}
}
運(yùn)行結(jié)果: