Software Development/Java

[Java] HashMap 사용법

Mei99 2024. 6. 4. 10:16

HashMap :

키(key)와 값(value) 쌍을 저장하는 데 사용

 

import java.util.HashMap;

public class HashMapMain {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		// hash map 은 파이썬의 딕셔너리와 비슷한 데이터 스트럭쳐
		// key, value 쌍을 저장한다.
		
		// 이름, 전화번호 쌍을 저장한다.
		
		HashMap<String, String> phoneMap = new HashMap<>();
		
		// 데이터 저장
		phoneMap.put("model", "iPhone 12");
		phoneMap.put("year", "2021");
		phoneMap.put("color", "red");
		
		// 데이터 억세스
		System.out.println( phoneMap.get("model"));
		
		System.out.println( "------------------------------");
		// 잘못된 코드!!!
		for (int i = 0; i < phoneMap.size(); i++) {
			System.out.println( phoneMap.get(i));
		}
		
		System.out.println( "------------------------------");
		// 돌아가는 코드 1 , (String)은 안써도 돌아가지만 써주는것(캐스팅)해주는 것이 좋다.
		Object[] values = phoneMap.values().toArray();
		
		for(int i=0; i < values.length; i++) {
			System.out.println( (String)values[i]);
		}
		
		System.out.println( "------------------------------");
		// 돌아가는 코드 2
		for ( Object data : phoneMap.values().toArray() ) {
			System.out.println( (String)data);
		}
		
		System.out.println( "------------------------------");
		// 데이터 값 변경
		phoneMap.replace("color", "blue");
		System.out.println( phoneMap.get("color"));
		
		System.out.println( "------------------------------");
		// 데이터 삭제
		phoneMap.remove("year");
		System.out.println( phoneMap.get("year"));
		
		System.out.println( "------------------------------");
		// 전체 데이터 삭제
		phoneMap.clear();
		
		// 데이터가 있는지 없는지 확인하는 코드
		if(phoneMap.isEmpty()) {
			System.out.println("데이터 없음");
		} else {
			System.out.println("데이터 있음");
		}
		

	}

}