Java – HashMap 출력하기

By | 2022년 11월 10일
Table of Contents

Java – HashMap 출력하기

Map 에 들어있는 데이타를 뽑아내는 방법을 정리합니다.

데이타 준비

Map<String, String> map = new HashMap<>();
map.put("key01", "value01");
map.put("key02", "value02");
map.put("key03", "value03");
map.put("key04", "value04");
map.put("key05", "value05");

entrySet()

key/value 를 한번에 추출합니다.

정렬이 안된 상태로 랜덤하게 데이타가 나옵니다.
정렬된 데이타가 필요하면 아래에서 설명하는 stream().sorted() 를 이용해야 합니다.

for (Map.Entry<String, String> entry : map.entrySet()) {
    System.out.println("[key]:" + entry.getKey() + ", [value]:" + entry.getValue());
}

keySet()

key 만 추출합니다.
value 가 필요하면 추가작업이 필요합니다.

정렬이 안된 상태로 랜덤하게 데이타가 나옵니다.

for (String key : map.keySet()) {
    String value = map.get(key);
    System.out.println("[key]:" + key + ", [value]:" + value);
}

Lambda

map.forEach((key, value) -> {
    System.out.println("[key]:" + key + ", [value]:" + value);
});

stream()

map.entrySet().stream().forEach(entry-> {
    System.out.println("[key]:" + entry.getKey() + ", [value]:"+entry.getValue());
});

stream().sorted()

아래의 방법으로 정렬된 출력값을 얻을 수 있습니다.

map.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEach(entry-> {
    System.out.println("[key]:" + entry.getKey() + ", [value]:"+entry.getValue());
});

map.entrySet().stream().sorted(Map.Entry.comparingByKey(Comparator.reverseOrder())).forEach(entry-> {
    System.out.println("[key]:" + entry.getKey() + ", [value]:"+entry.getValue());
});

답글 남기기