我已经比较了两个名为alStringNamealNameAll的ArrayLists

然后,将其添加到名为alNameSelected的ArrayList中,如下所示:

            for(int i=0;i<alStringName.size();i++){
                for(int j=0;j<alNameAll.size();j++){
                    if (alStringName.get(i).equals(alNameAll.get(j))) {

                        alNameSelected.add(alStringName.get(i));

                    }
                }
            }


现在,它的工作正常。但是,我必须将不匹配的内容或数据添加到另一个名为alNameUnknown的ArrayList中。

我怎样才能做到这一点 ?

最佳答案

将内循环替换为“是否匹配”检查:

for(int j=0;j<alNameAll.size();j++){
                    if (alStringName.get(i).equals(alNameAll.get(j))) {

                        alNameSelected.add(alStringName.get(i));

                    }
                }


变成:

if ( alNameAll.contains(alStringName.get(i)){
  alNameSelected.add(alStringName.get(i));
}else{
  alNameUnknown.add(alStringName.get(i));
}

09-30 17:58