본문 바로가기

삽질하기/JAVA

HashMap 값 올바르게 삭제하기.

반응형

private void removeData(HashMap data) {
   Set s = data.keySet();
   Iterator i = s.iterator();

   while(i.hasNext()) {
      KeyValue kv = (KeyValue) i.next();

      if(kv != "어떤조건") {
         data.remove(kv);
         s = data.keySet();
         i = s.iterator();
      }
   } 
}

HashMap에서 모든 값들을 꺼내서 어떤 조건에 만족할 경우 그 값을 삭제하고 난 후에
iterator()를 다시 생성해 줘야 HashMap에서 조건에 맞는 값들을 모두 삭제할 수 있다.