자바

HashMap

연향동큰손 2024. 2. 21. 20:05

HashMap이란? : 자료를 쌍으로 관리하는데 필요한 메서드가 정의 되어있는 Map 인터페이스를 구현한 클래스중 가장 많이 사용하는 클래스이다.

 

HashMap의 기본 구조

HashMap<key, value>

HashMap은 key와 key값에 따른 value로 이루어져있다.

 

HashMap의 주요 메서드

1) put(key,value) ==>HashMap에 key에 상응하는 value값을 추가해준다.

2) remove(key) ==> HashMap에서 key에 상응하는 value값을 지워준다.

3) keySet() ==> 주로 Iterator를 이용해서 HashMap의 전체를 순회할때 사용한다. 

4) containsKey(key) ==> HashMap에 매개변수로 받은 key값을 가지는 value가 있으면 true, 아니면  false 반환

Iterator<Integer> ir = hashMap.keySet().iterator();

이렇게 하면 HashMap의 key집합(set)을 반환하여 Iterator객체에 넣어서 HashMap을 순회할때 사용할 수 있다.

 

예시코드
package hashmap;

import java.util.HashMap;
import java.util.Iterator;

import collection.Member;

public class MemberHashMap {
	
	private HashMap<Integer, Member> hashMap;
	
	public MemberHashMap() {
		hashMap = new HashMap<Integer, Member>();
	}
	
	public void addMember(Member member) {
		hashMap.put(member.getMemberId(),member);
	}
	
	public boolean removeMember(int memberId) { // 매개변수로 받은 key값을 가지는 회원을 HashMap에서 지우는 메서드
		if(hashMap.containsKey(memberId)) {
			hashMap.remove(memberId);
			return true;
		}
		
		System.out.println(memberId+"가 존재하지 않습니다.");
		return false;
	}
	
	public void showAllMember() { //Iterator를 사용해 전체 회원을 출력하는 메서드
		Iterator<Integer> ir = hashMap.keySet().iterator();
		while(ir.hasNext()) {
			int key=ir.next(); 
			Member member = hashMap.get(key);
			System.out.println(member);
		}
		System.out.println();
	}
}

'자바' 카테고리의 다른 글

동시성 문제를 해결하기 위한 ThreadLocal[java]  (0) 2025.03.05
Thread란 무엇인가[Java]  (1) 2025.03.02
예외  (0) 2025.02.02
Iterator  (2) 2024.02.21
인터페이스로 객체 만들기  (0) 2024.02.20