Listz在執行remove元素的時候,remove一個元素以後,後面的元素系會向前移。blog
List<String> list = new ArrayList<String>();
list.add("11");
list.add("22");
list.add("31");
list.add("81");
list.add("91");
list.add("61");rem
當咱們執行get
for(int i =0; i<list.size();i++){
if(list.get(i).contains("1")){
list.remove(i);
}it
}List
的時候。方法
List每remove掉一個元素之後,後面的元素都會向前移動 ,此時若是執行i++,則剛剛移過來的元素沒有被讀取。移動
解決方法:co
for(int i =0; i<list.size();i++){
if(list.get(i).contains("1")){
list.remove(i);
i--;
}
}new
參考:http://uule.iteye.com/blog/984259