我有一个ArrayList,里面包含一些值,如2,3,4,5,6。现在想要检查某个值是否存在,并删除该特定的值。请帮助我做到这一点。提前感谢。
我尝试过,
ArrayList<Integer> Positions=new ArrayList<Integer>();
Positions.remove(6);
但是它显示了一个错误。
我有一个ArrayList,里面包含一些值,如2,3,4,5,6。现在想要检查某个值是否存在,并删除该特定的值。请帮助我做到这一点。提前感谢。
我尝试过,
ArrayList<Integer> Positions=new ArrayList<Integer>();
Positions.remove(6);
但是它显示了一个错误。
Positions.remove(6);
从特定位置删除项目。
所以首先您需要使用for循环比较数组列表中的项,并获取该项的位置,然后调用Positions.remove(该项在ArrayList中的位置)
。
尝试使用此代码。
ArrayList<Integer> positions = new ArrayList<Integer>();
positions.add(3); // add some sample values
positions.add(6); // add some sample values
positions.add(1); // add some sample values
positions.add(2); // add some sample values
positions.add(6);
for(int i=0;i<positions.size();i++)
{
if(positions.get(i) == 6)
{
positions.remove(i);
}
}
Log.i("========== After Remove ",":: "+positions.toString());
输出结果:I/========== 移除后 ( 309): :: [3, 1, 2]
试试这个:
ArrayList<Integer> positions = new ArrayList<Integer>();
positions.add(3); // add some sample values
positions.add(6); // add some sample values
positions.add(1); // add some sample values
positions.add(2); // add some sample values
int index = positions.indexOf(6); // finds the index of the first occurrence of 6
if (index >= 0) { // if not found, index will be -1
positions.remove(index); // removes this occurrence
}