在数组列表中查找具有某个局部变量的对象



我有一个数组列表"comps";对象组件的每个组件都有一个特定的ID。我想在数组中搜索具有特定ID的组件,在方法翻转中使用它。

for(int i=0; i<comps.size(); i++){
if(a==comps[i].sourceID){
comps[i].flip();
}
}

我这样做了,但它并没有像我期望的那样工作;需要数组,但是ArrayList找到了";

您使用的是ArrayList,这意味着您不能使用括号进行索引,您应该做的是:

for(int i=0; i<comps.size(); i++){
if(a==comps.get(i).sourceID){
comps.get(i).flip();
}
}

此外,我建议您查看流,这使更容易

您正试图通过[]访问数组成员。你应该试试comps.get(i(

列表不像Arrays那样具有索引,请使用comps.get(i(作为列表。有关更多选项,请记下comps。看看IDE给你的建议。列表可以做一些巧妙的事情。应该看起来像这样:

for(int i=0; i<comps.size(); i++) {
if( a==comps.get(i).sourceID ) {
comps.get(i).flip(); }
}

最新更新