Commons 컬렉션-MapIterator 인터페이스

JDK Map 인터페이스는 EntrySet 또는 KeySet 객체에 대해 반복이 수행되므로 반복하기가 매우 어렵습니다. MapIterator는 Map에 대한 간단한 반복을 제공합니다. 다음 예제는 동일하게 설명합니다.

MapIterator 인터페이스의 예

MapIteratorTester.java의 예는 다음과 같습니다.

import org.apache.commons.collections4.IterableMap;
import org.apache.commons.collections4.MapIterator;
import org.apache.commons.collections4.map.HashedMap;
public class MapIteratorTester {
   public static void main(String[] args) {
      IterableMap<String, String> map = new HashedMap<>();
      map.put("1", "One");
      map.put("2", "Two");
      map.put("3", "Three");
      map.put("4", "Four");
      map.put("5", "Five");
      MapIterator<String, String> iterator = map.mapIterator();
      while (iterator.hasNext()) {
         Object key = iterator.next();
         Object value = iterator.getValue();
         System.out.println("key: " + key);
         System.out.println("Value: " + value);
         iterator.setValue(value + "_");
      }
      System.out.println(map);
   }
}

산출

출력은 다음과 같습니다.

key: 3
Value: Three
key: 5
Value: Five
key: 2
Value: Two
key: 4
Value: Four
key: 1
Value: One
{3=Three_, 5=Five_, 2=Two_, 4=Four_, 1=One_}