본문 바로가기
Language/Java

[자바 기본 개념] 컬렉션(Collection) - HashMap / 예제

by 나비와꽃기린 2016. 6. 22.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

1.4 HashMap

-(key)와 값(value)의 쌍으로 구성되는 요소를 다루는 컬렉션

-값을 검색하기 위해서는 반드시 키 이용

-요소 삽입 : get() 메소드

-요소 검색 : put() 메소드


public class _04HashMapDicEx {
	 public static void main(String[] args) {
	   HashMap<String, String> dic=new HashMap<String, String>();
	   dic.put("baby", "아기");
	   dic.put("love", "사랑");
	   dic.put("apple", "사과");  //HashMap에 데이터 3개 저장
	   //dic 에 있는 모든 k,v 쌍을 출력
	   //key value를 각각 컨트롤 하고 싶으면 Set 사용해야
	   Set<String> keys=dic.keySet();
	   Iterator<String> it=keys.iterator();
	   while (it.hasNext()) {
		String key=it.next();
		String value=dic.get(key);
		System.out.println("("+key+","+value+")");
	   }
	   Scanner sc=new Scanner(System.in);
	   for (int i = 0; i < 3; i++) {
		System.out.println("찾고픈단어는");
		String eng=sc.next();
		System.out.println(dic.get(eng)); // 입력하는 key 값으로  value값 가져오기
	   }
	 }
}

public class _05HashMapScoreEx {
   public static void main(String[] args) {
		HashMap<String, Integer> JAVAscore=new HashMap<String, Integer>();
		JAVAscore.put("1", 97);
		JAVAscore.put("2", 23);
		JAVAscore.put("3", 46);
		JAVAscore.put("4", 57);
		JAVAscore.put("5", 67);
		System.out.println("hasmap요소개수"+JAVAscore.size());
		Set<String> keys=JAVAscore.keySet(); //key 문자열을 가진 집한 Set 컬렉션 리턴
		Iterator<String> it=keys.iterator(); //리턴받은 keys 문자열에 순서대로 접근할 수 있는 Iterator 리턴
		while (it.hasNext()) {
			String name=it.next();
			 int score=JAVAscore.get(name);
			 System.out.println(name+":"+score);                        }
	 }
}



public class _06HashMapStudentEx {
   public static void main(String[] args) {
		HashMap<String, Student> map=new HashMap<String, Student>();
		map.put("민경", new Student(1, "010-35-2346"));
		map.put("성진", new Student(2, "010-235-23746"));     
		map.put("종혁", new Student(3, "010-24365-2236"));
		System.out.println("요소개수"+map.size());
		////출력된 결과는 삽입된 결과와 순서는 다르다는 것을 기억
		Set<String> names=map.keySet();
		Iterator<String> it=names.iterator();
		while (it.hasNext()) {
			  String name=it.next();
			  Student student=map.get(name);
			  System.out.println(name+":"+student.id+" "+student.tel);
		}
   }
}
class Student{
   int id;
   String tel;
   public Student(int id, String tel){
	this.id=id;
	this.tel=tel;
   }
}