본문 바로가기

자바/컬렉션

map

예제)


import java.util.Hashtable;

import java.util.Iterator;


public class Test2 {

public static void main(String[] args) {

/*

* Map : 키,값의 구조

* 키는 Set으로 중복을 허용하지 않는다.

* 대표적인 구현클래스 : Hashtable, HashMap

* Hashtable : 동기화 지원(속도가 느림)

* HashMap : 동기화 지원하지 않음

*/

Hashtable<String, String> map=new Hashtable<String, String>();

map.put("서울", "1000만"); //왼쪽이 키(set) // put 데이터 추가(키(set), 값) 

map.put("부산", "350만");

map.put("대구", "300만");

map.put("인천", "300만");

map.put("광주", "150만");

map.put("대전", "150만");

map.put("서울", "1100만");

System.out.println(map);

// 데이터 가져오기(값)

String s=map.get("부산");

System.out.println(s);

//키가 존재하는지 확인할 때

if(map.containsKey("울산"))

System.out.println("있다.");

else

System.out.println("없다");

//값이 존재하는지 확인할 때

if(map.contains("150만"))

System.out.println("있다");

else

System.out.println("없다");

//제거

map.remove("대전"); //키를 입력하여 제거한다.

System.out.println(map);

//Map의 전체출력!!!

//Map은 이터레이터가 없다. 그러므로 향상된 for문도 사용불가. =>vector와 ArrayList, set처럼 전체출력 못함.

//하지만 key가 set(set은 Test1 예제 참고)이므로 key를 이용하여 전체순회하면서 처리.

//map.keySet() : key의 Set 객체 리턴

Iterator<String> it=map.keySet().iterator(); // 맵의참조변수.keySet().iterator();를 기억하자

while(it.hasNext()){

String key=it.next();

String value=map.get(key);

}

}

}


결과)


{인천=300만, 대구=300만, 서울=1100만, 대전=150만, 광주=150만, 부산=350만}

350만

없다

있다

{인천=300만, 대구=300만, 서울=1100만, 광주=150만, 부산=350만}


'자바 > 컬렉션' 카테고리의 다른 글

제너릭 (Box)  (0) 2013.05.24
Stack  (0) 2013.05.24
TreeSet  (0) 2013.05.24
set  (0) 2013.05.24
Vector, ArrayList class  (0) 2013.05.21