2022년 1월 31일 월요일

[JAVA] hashMap에서 key값으로 Value값 찾기, Value값으로 key값 찾기


Java프로그램을 작성하다가 Color값 배열을 만들고 인덱스로 배열 값을 가져오다가 그 반대로 배열 값을 가지고 인덱스를 구해야 하는 상황이 발생하였다. 참고하려고 정리한다. 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.awt.Color;
import java.util.HashMap;
import java.util.Map;
 
public class HashMap_Get_Key_Data {
 
    public static void main(String[] args) {
        Map<Color, Integer> mapColor = new HashMap<>();
        
        // HashMap 데이터 추가
        mapColor.put(Color.RED, 0);
        mapColor.put(Color.ORANGE, 1);
        mapColor.put(Color.YELLOW, 2);
        mapColor.put(Color.GREEN, 3);
        mapColor.put(Color.BLUE, 4);
        
        // Key값으로 Value값을 얻는다.
        System.out.println("key Color.ORANGE's Value : " + mapColor.get(Color.ORANGE));
        System.out.println("key Color.GREEN's Value  : " + mapColor.get(Color.GREEN));
 
        // Value값으로 Key값을 얻는다.
        System.out.println("Value 0's Key : " + getKey(mapColor, 0));
        System.out.println("Value 4's Key : " + getKey(mapColor, 4));
    }
 
    // hashmap에서 value로 key 찾기
    private static <K, V> K getKey(Map<K, V> map, V value) {
 
        for (K key : map.keySet())
            if (value.equals(map.get(key)))
                return key;
 
        return null;
    }
}
 
 
cs


------------------------ 출력 결과 ---------------------
key Color.ORANGE's Value : 1
key Color.GREEN's Value  : 3
Value 0's Key : java.awt.Color[r=255,g=0,b=0]
Value 4's Key : java.awt.Color[r=0,g=0,b=255]


댓글 없음:

댓글 쓰기

[JAVA] hashMap에서 key값으로 Value값 찾기, Value값으로 key값 찾기

Java프로그램을 작성하다가 Color값 배열을 만들고 인덱스로 배열 값을 가져오다가 그 반대로 배열 값을 가지고 인덱스를 구해야 하는 상황이 발생하였다. 참고하려고 정리한다.  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...