Java 中的增量映射
在 Java 中使用 Map 或 HashMap 时,您可能需要增加该值。 在 Java 中,有很多方法可以增加 Map 的值。
在本文中,我们将了解如何在 Java 中增加 Map 值,以及一些必要的示例和解释,以使该主题更容易。
在开始示例之前,我们先看一下增加 Map 值所需的基本步骤。
- 为了增加值,首先,我们需要获取Map的键。
- 之后,我们需要从 Map 中获取当前值。
- 我们可以使用下面分享的任何方法轻松增加 Map 值。
让我们看看这个方法的例子。
方法一: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()增加映射值
// 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 类递增映射值
// 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}
相关文章
设置 java.util.Date 的时区
发布时间:2023/08/02 浏览次数:130 分类:Java
-
本文将介绍如何使用 Java 设置与日期关联的时区。 java.util.Date 没有时区。使用 ZonedDateTime 设置 java.util.Date 的时区
Java Date vs. LocalDate
发布时间:2023/08/02 浏览次数:146 分类:Java
-
本文介绍了 Java 中 Date 和 LocalDate 之间的区别。Java 日期与 LocalDate Date类来自Java util包,LocalDate类被添加到Java的Time包中。 这两个类都用于 Java 中的日期; 让我们看看 Java 中 Date 和 LocalDate 之间
Java 获取星期几
发布时间:2023/08/02 浏览次数:53 分类:Java
-
本文介绍如何使用 Java 获取星期几。Java 获取星期几 有时,在使用 UI 时需要获取一周中的某一天。 在Java中可以通过以下两种方法来实现:
在 Java 中使用 Zellers 同余查找星期几
发布时间:2023/08/02 浏览次数:92 分类:Java
-
本文展示了如何使用 Java 实现 Zeller 的同余法来查找星期几。 另外,我们将看一个带有逐行解释的示例,以使主题更容易。在 Java 中使用 Zeller 的同余式查找星期几
Java 中的无符号和有符号右移运算符
发布时间:2023/08/02 浏览次数:168 分类:Java
-
本文介绍 Java 中的有符号和无符号右移运算符。 它还通过代码示例演示了它们的用法。Java 中的无符号和有符号右移运算符 与其他编程语言不同,Java 支持两个右移运算符。
Java 中的菱形运算符
发布时间:2023/08/01 浏览次数:178 分类:Java
-
在本文中,我们将看到菱形运算符 的使用,并且我们将借助示例和解释来讨论该主题,以使该主题更容易。Java 中的菱形运算符
Java中的接口默认方法
发布时间:2023/08/01 浏览次数:125 分类:Java
-
本文介绍如何在Java中使用接口中的默认方法。Java中的接口默认方法 在接口只有抽象方法之前,Java 8 就引入了默认方法。 默认或防御方法允许开发人员在不破坏实现的情况下向接口添加新方法
Java 中的静态接口
发布时间:2023/08/01 浏览次数:73 分类:Java
-
请注意,当接口是嵌套的或另一个接口的子接口时,您可以将接口声明为静态。在 Java 的嵌套接口中使用 static
在 Java 中使用索引和 forEach
发布时间:2023/08/01 浏览次数:136 分类:Java
-
在本文中,我们将学习如何将 forEach() 函数与索引组合一起使用。 此外,我们将通过使用必要的示例和解释来涵盖该主题,以使该主题更容易。