본문 바로가기

JAVA

[JAVA] HashMap Key,Value 가져오기

 

1. Key, Value 모두 가져올 경우

 

키와 값 모두 가져와야하는 경우 entrySet() 메서드 또는 forEach() 문을 사용한다.

Map.Entry<K, V> 인터페이스의 entrySet() 메서드를 사용한다.

Map.Entry 인터페이스는 Map 객체의 키와 값을 접근할 수 있도록 해주는 getKey(), getValue() 함수가 존재한다.

 

 

Map<String, Integer> map = new HashMap<>();
map.put("test", 1);
map.put("sample", 2);

for (Map.Entry<String, Integer> data : map.entrySet()) {
  System.out.println(String.format("Key (name) is: %s, Value (age) is : %s", data.getKey(), data.getValue()));
}

 

 

java8 은 람다식을 사용하여 간결하게 작성 가능하다.

 

map.forEach((k,v) -> System.out.println(String.format("Key (name) is: %s, Value (age) is : %s", k, v)));

 

 

 

2.  key , value 각각 가져올 경우

 

keySet() , values() 를 사용하면 된다.

 

// keySet() 사용하여 key 값 가져오기
for (String key : map.keySet()) {
  System.out.println(key);
}

// values() 사용하여 value 값 가져오기
for (String value : map.values()) {
  System.out.println(value);
}

 

 

3. key 값으로 value 값 구하기.

 

    Map<string, object> map = new HashMap<string, object>();

    //KEY값을 이용하여 VALUE값 가져오기
    for (String key : map.keySet()){
        mapKey = key;
        Value = map.get(key);
    }