HOWTO · Java

Java의 증분 맵

이 튜토리얼에서는 Java에서 맵을 증가시키는 방법에 대해 설명합니다.

이 페이지의 내용

Java에서 Maps 또는 HashMaps로 작업할 때 값을 증가시켜야 할 수 있습니다. Java에는 Map의 값을 증가시키는 여러 가지 방법이 있습니다.

이 기사에서는 Java에서 Map 값을 증가시키는 방법과 주제를 더 쉽게 만드는 데 필요한 몇 가지 예제 및 설명을 살펴봅니다.

예제로 이동하기 전에 Map 값을 증가시키는 데 필요한 기본 단계를 살펴보겠습니다.

  1. 값을 증가시키려면 먼저 Map의 키를 가져와야 합니다.
  2. 그런 다음 Map에서 현재 값을 가져와야 합니다.
  3. 아래 공유된 방법 중 하나를 사용하여 Map 값을 쉽게 늘릴 수 있습니다.

이 방법의 예를 살펴보겠습니다.

방법 1: Java에서 Map 값을 증가시키는 일반적인 방법

아래 예제는 Map을 증가시키는 가장 간단한 방법을 보여줍니다. 예제 코드를 살펴보십시오.

// Importing necessary packages
import java.util.HashMap;
import java.util.Map;

// Our main class
class Main {
  public static <K> void IncrementMapValue(Map<K, Integer> MyMap, K key) {
    // Collecting the Map key
    Integer count = MyMap.get(key);

    // Checking whether the Map value is null
    if (count == null) {
      count = 0;
    }

    // increment the Map value
    MyMap.put(key, count + 1);
  }

  public static void main(String[] args) {
    Map<String, Integer> MyMap = new HashMap(); // Creating an object of Map
    MyMap.put("Value-A", 100); // Putting a value for MyMap

    IncrementMapValue(MyMap, "Value-A"); // Incrementing value
    IncrementMapValue(MyMap, "Value-B"); // Incrementing value

    System.out.println(MyMap);
  }
}

우리는 이미 각 행의 목적에 대해 주석을 달았으며 위의 예제 코드를 실행하면 아래와 같은 출력을 얻을 수 있습니다.

{Value-B=1, Value-A=101}

방법 2: Java에서 containsKey()를 사용하여 Map 값 증가

// Importing necessary packages
import java.util.HashMap;
import java.util.Map;

// Our main class
class Main {
  public static <K> void IncrementMapValue(Map<K, Integer> MyMap, K key) {
    // Collecting the Map key and getting the current value of the Map
    Integer count = MyMap.containsKey(key) ? MyMap.get(key) : 0;
    MyMap.put(key, count + 1); // increment the Map value
  }

  public static void main(String[] args) {
    Map<String, Integer> MyMap = new HashMap(); // Creating an object of Map
    MyMap.put("Value-A", 100); // Putting a value for MyMap

    IncrementMapValue(MyMap, "Value-A"); // Incrementing value
    IncrementMapValue(MyMap, "Value-B"); // Incrementing value

    System.out.println(MyMap);
  }
}

우리는 이미 각 행의 목적에 대해 설명했습니다. 위의 예에서 containsKey()는 Map에 키에 대한 매핑이 포함되어 있는지 확인합니다.

위의 예제 코드를 실행하면 아래와 같은 결과를 얻을 수 있습니다.

{Value-B=1, Value-A=101}

방법 3: Java에서 AtomicInteger 또는 MutableInt 클래스를 사용하여 Map 값 증가

// Importing necessary packages
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;

// Our main class
class Main {
  public static <K> void IncrementMapValue(Map<K, Integer> MyMap, K key) {
    // Collecting the Map key and getting the current value of the Map
    AtomicInteger AtomicInt = new AtomicInteger(MyMap.containsKey(key) ? MyMap.get(key) : 0);
    MyMap.put(key, AtomicInt.incrementAndGet()); // increment the Map value
  }

  public static void main(String[] args) {
    Map<String, Integer> MyMap = new HashMap(); // Creating an object of Map
    MyMap.put("Value-A", 100); // Putting a value for MyMap

    IncrementMapValue(MyMap, "Value-A"); // Incrementing value
    IncrementMapValue(MyMap, "Value-B"); // Incrementing value

    System.out.println(MyMap);
  }
}

우리는 이미 각 행의 목적에 대해 설명했습니다. 여기서 incrementAndGet() 메서드는 Map 값을 증가시키는 데 사용됩니다.

위의 예제 코드를 실행하면 아래와 같은 결과를 얻을 수 있습니다.

{Value-B=1, Value-A=101}