配列リストを検索して値 (再発する可能性があります) を見つけ、その値のすべてのインスタンスを削除しようとしています。また、同じ場所にある値を別の配列リストから削除したいと思います。ArrayList は両方ともArrayList<String>
.
たとえば、ArrayList2 で数字の 5 を探しています。
ArrayList 1 ArrayList2
cat 1
pig 2
dog 5
chicken 3
wolf 5
両方の場所で 5 という数字を見つけたら、ArrayList1 から犬と狼を削除したいと思います。私のコードにはエラーはありませんが、私が求めているものを実際に削除しているようには見えません。
//searching for
String s="5";
//for the size of the arraylist
for(int p=0; p<ArrayList2.size(); p++){
//if the arraylist has th value of s
if(ArrayList2.get(p).contains(s)){
//get the one to remove
String removethis=ArrayList2.get(p);
String removetoo=ArrayList1.get(p);
//remove them
ArrayList2.remove(removethis);
ArrayList1.remove(removetoo);
}
}
arrayLists を印刷すると、ほとんど変更されていないように見えます。私が間違っていることを誰かが見ていますか?