楼主我给你一个例子你可以参考一下,是我自己写程序的时候做的。
先说一下思路吧。首先你的条件是去除ArrayList中你不希望出现的元素,那么直接修改肯定是做不到的。我的思路就是你可以重新建一个新的ArrayList,
然后将原来的arraylist中的元素抽出来挨个和你的条件进行对比,然后如果符合条件就做一些处理在添加到新的arrayList中去,如果不需要处理就直接添加
具体的实例代码如下:
public ArrayList<String> arrHandle(ArrayList<String> list,String deletStr)
{
//新建一个将来要返回的list
ArrayList<String> blist = new ArrayList<String>();
//遍历传进来的list
for(int i = 0 ; i < list.size() ; i ++ )
{
//得到的元素
String str = list.get(i);
StringBuilder sb = new StringBuilder(str);
//判断得到的元素是否含有deletStr,如果有就删除
if(str.contains(deletStr))
{
//将得到的每个元素拆分成char数组然后去挨个对比其中的元素
char[] c = str.toCharArray();
for(int j = 0 ; j < c.length-2 ; j ++)
{
if(c[j]=='a'&&c[j+1]=='b'&&c[j+2]=='c')
{
sb.delete(j, j+2);
}
}
}
//最后将重新组合的元素添加到blist中
blist.add(sb.toString());
}
return blist;
}
这只是一个方法,不过还是很容易看懂的。 |