2016-03-21 15 views
-1

イテレータを使用して配列リストからPing型のオブジェクトを削除する方法がありますが、オブジェクトを削除しないようです。これはなぜ削除しないのですか?

public void remover(String a){ 
    Iterator<Ping> it = listOfSharkNames.iterator(); 
    while (it.hasNext()) { 
     Ping user = it.next(); 
     System.out.println(user.getName()); 

     if (user.getName().equals("Daymond")) { 

     }else{ 
     it.remove(); 
     } 
    } 
} 

と結果

Finley 
Bill Nye 
Buddy 
Buddy 
Mary Lee 
Daymond 

私は、これは単純なことかもしれ理解し、しかし、あなたはそれを削除するかどうかを決定する前に名前をプリントアウトしていただきました間違った

+0

あなたは 'else'ブロックを入力したときに何が起こるのかを確認するデバッガを試しましたか? –

+0

削除を実行しているループ内の要素を印刷しています。後でリストをもう一度印刷しようとしましたか? –

答えて

4

私の人生のために私が見ることができませんか否か。一致するエントリが削除された後、Listの内容を出力します。

+0

まさに私が思っていたことが起こっています。 –

0

要素を削除してからリストを印刷します。現在、要素を削除する前に印刷しています。

関連する問題