千万不要对List进行索引遍历后的删除操作
package com.daylywork.hello;
import java.util.ArrayList;
import java.util.List;
public class MyBigDanci {
public static void getBig(){
String s = " abdc fgf alsjdalk asdas ";
String aa=s.trim();
System.out.println(aa);
String[] a=aa.split(" ");
List<String> list=new ArrayList();
for (String ssss:a){
list.add(ssss);
}
//不能通过下标循环删减一个list,因为下标在不断增长,但是在做删减元素的时候,数组的长度已经有了变化,会导致一部分元素未被遍历到
for (int jj=0;jj<list.size();jj++){
if (list.get(jj).equals("")){
list.remove(jj);
}
}
System.out.println(list);
}
public static void main(String[] args){
getBig();
}
}
结果
abdc fgf alsjdalk asdas
[abdc, fgf, , alsjdalk, , asdas]
最好的办法就是在第二个for循环,也就是循环list那里加上断点调试一下