강좌 & 팁
글 수 2,412
2013.06.09 14:19:54 (*.52.177.249)
44075
Java에서 Map은 키와 값을 쌍으로해서 값을 보관 할수 있습니다.
Map에서 값을 꺼내오기 위해서는 키가 필요합니다.
키를 모른다면 당연히 값을 꺼내올수가 없죠.
하지만 키를 몰라도 Map에 있는 값들을 다 가져올수 있습니다.
Iterator로 가져오는 방법, Map.entrySet으로 가져오는 방법, Map.keySet로 가져오는 방법
그이외의 방법이 있는지는 모르겠습니다.
Iterator로 가져오는 방법이 주로 사용되는 방법이라고 생각됩니다.
검색하면 제일 많이 나오거든요....저두 주로 사용해 왔고...^^;
그럼, 어떻게 내용을 가져오는지 샘플 소스로 확인 해보시길.....
[샘플 소스]
import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class JavaMap { /** * @param args */ public static void main(String[] agrs) { Map<String, Object> map = new HashMap<String, Object>(); for (int i = 0; i < 10; i++) { map.put("key"+i, "value"+i); } System.out.println("ex1)----- Iterator"); Iterator<String> keys = map.keySet().iterator(); while (keys.hasNext()) { String key = keys.next(); System.out.printf("%s = %s \n", key, map.get(key)); } System.out.println("------------------"); System.out.println(); System.out.println("ex2)----- Map.Entry"); for (Map.Entry<String, Object> elem : map.entrySet()) { System.out.printf("%s = %s \n", elem.getKey(), elem.getValue()); } System.out.println("------------------"); System.out.println(); System.out.println("ex3)----- Map.keySet"); for (String key : map.keySet()) { System.out.printf("%s = %s \n", key, map.get(key)); } System.out.println("------------------"); System.out.println(); } }
[실행 결과]
나오는 결과는 다 똑같습니다. 틀리면 이상하겠지만....^^;
어떤걸 사용할지는 각자 알아서 맘에드는걸 사용해 보세요....
감사합니다.