Java에서 맵의 각 요소를 반복하는 방법

Mohammad Irfan 2023년10월12일
  1. Java에서Map 요소를 반복하는 방법
  2. Java에서for-loop를 사용하여Map 요소 반복
  3. Java에서foreach를 사용하여Map 요소 반복
  4. Java에서EntryIterator를 사용하여Map 요소 반복
  5. Java에서for-eachkeySet()을 사용하여Map 요소 반복
  6. Java에서while-loop를 사용하여Map 요소 반복
  7. Java에서StreamforEach를 사용하여Map 요소 반복
  8. Java에서forEachlambda를 사용하여 맵 요소 반복
Java에서 맵의 각 요소를 반복하는 방법

이 튜토리얼에서는 맵의 각 요소를 반복하는 방법을 소개하고이를 이해하기위한 몇 가지 예제 코드를 나열합니다.

Java에서Map 요소를 반복하는 방법

Map은 키-값 쌍의 형태로 데이터를 수집하는 데 사용되는 인터페이스입니다. Java는for-loop,for-each loop,while-loop,forEach()메소드 등과 같은 맵 요소를 반복하는 여러 가지 방법을 제공합니다. 예제를 살펴 보겠습니다.

Java에서for-loop를 사용하여Map 요소 반복

간단한 for-loop를 사용하여 Map요소를 반복합니다. 여기에서는 루프에서iterator()메소드가 항목을 가져 오는 데 사용됩니다.

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    for (Iterator<Map.Entry<Integer, String>> entries = map.entrySet().iterator();
         entries.hasNext();) {
      Map.Entry<Integer, String> entry = entries.next();
      System.out.println(entry.getKey() + " : " + entry.getValue());
    }
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

Java에서foreach를 사용하여Map 요소 반복

for-each 루프와entrySet()메소드를 사용하여 맵의 각 항목을 반복합니다. entrySet()는지도의 항목 집합을 반환합니다.

import java.util.HashMap;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    for (Map.Entry<Integer, String> entry : map.entrySet()) {
      System.out.println(entry.getKey() + ":" + entry.getValue());
    }
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

Java에서EntryIterator를 사용하여Map 요소 반복

iterator()메소드는 요소를 순회하는Iterator를 반환하고EntryMap의 항목을 수집하는 데 사용됩니다.

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    Iterator<Map.Entry<Integer, String>> entries = map.entrySet().iterator();
    while (entries.hasNext()) {
      Map.Entry<Integer, String> entry = entries.next();
      System.out.println(entry.getKey() + ":" + entry.getValue());
    }
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

Java에서for-eachkeySet()을 사용하여Map 요소 반복

keySet()메소드는for-each 루프를 사용하여 반복하는 데 사용되는Map의 키 세트를 수집하는 데 사용됩니다.

import java.util.HashMap;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    for (Integer key : map.keySet()) {
      System.out.println(key + " : " + map.get(key));
    }
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

Java에서while-loop를 사용하여Map 요소 반복

여기서는iterator()메서드를 사용하여 키의 반복자를 가져온 다음 while-loop를 사용하여 이러한 키를 반복했습니다. 키로 값을 얻기 위해get()메소드를 사용했습니다.

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    Iterator<Integer> itr = map.keySet().iterator();
    while (itr.hasNext()) {
      Integer key = itr.next();
      System.out.println(key + " : " + map.get(key));
    }
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

Java에서StreamforEach를 사용하여Map 요소 반복

스트림을 사용하여 요소를 반복 할 수 있습니다. 여기서는entrySet()을 사용하여 스트림의forEach()메소드를 통해 추가로 통과 한 맵 항목을 수집했습니다.

import java.util.HashMap;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    map.entrySet().stream().forEach(System.out::println);
  }
}

출력:

100=Hundred
1000=Thousand
10=Ten

Java에서forEachlambda를 사용하여 맵 요소 반복

람다 식을 사용하여지도 요소를 반복 할 수도 있습니다. 여기서는forEach()메서드 내에서 람다 표현식을 사용했습니다.

import java.util.HashMap;
import java.util.Map;

public class SimpleTesting {
  public static void main(String[] args) {
    Map<Integer, String> map = new HashMap<>();
    map.put(10, "Ten");
    map.put(100, "Hundred");
    map.put(1000, "Thousand");
    map.forEach((key, value) -> System.out.println(key + " : " + value));
  }
}

출력:

100 : Hundred
1000 : Thousand
10 : Ten

관련 문장 - Java Map

관련 문장 - Java Collection