[Java8] Map의 forEach, Sort, Remove

반응형
728x90
반응형

forEach

 /* Map */
 Map<String, Object> testMap2
     = Map.ofEntries(entry("AAA", 10),
                     entry("BBB", 20),
                     entry("CCC", 30));

 

전체 요소를 출력해보자.

 

  • 기존 for문
for (Map.Entry<String, Object> entry : testMap2.entrySet()) {
	System.out.println(entry.getKey());
}

 

  • java8 forEach
testMap2.forEach((name, num) -> System.out.println(name + " : " + num));

 

 

sorted

 /* Map */
 Map<String, Object> testMap2
     = Map.ofEntries(entry("AAA", 10),
                     entry("BBB", 20),
                     entry("CCC", 30));

 

key 기준으로 정렬해보자.

testMap2.entrySet().stream()
                  .sorted(Map.Entry.comparingByKey())
                  .forEachOrdered(System.out::println);

 

 

remove

/* Map */
Map<String, Object> testMap3 = new HashMap<>();
testMap3.put("AAA", 10);
testMap3.put("QQQ", 50);

 

key-value 모두 매칭되는 항목을 제거하자.

 

testMap3.remove("QQQ", 40);
System.out.println(testMap3); // {QQQ=50, AAA=10}

key "QQQ"에 해당하는 value 는 50이므로 항목이 제거되지 않은 Map 이 출력되었다.

 

testMap3.remove("QQQ", 50);
System.out.println(testMap3); // {AAA=10}

key "QQQ"에 해당하는 value 50에 맞는 항목에 제거되었다.

 

 

 

 

반응형

Designed by JB FACTORY