Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类引用

Java 有用资源

Java - Map 接口



Map 接口

Map 接口将唯一的键映射到值。键是一个您可以稍后用来检索值的对象

  • 给定一个键和一个值,您可以将该值存储在 Map 对象中。存储值后,您可以使用其键来检索它。

  • 当调用 map 中不存在项目时,一些方法会抛出 NoSuchElementException。

  • 当对象与 map 中的元素不兼容时,会抛出 ClassCastException。

  • 如果尝试使用空对象并且 map 中不允许为空,则会抛出 NullPointerException。

  • 当尝试更改不可修改的 map 时,会抛出 UnsupportedOperationException。

Map 接口方法

序号 方法和描述
1

void clear( )

从调用 map 中移除所有键/值对。

2

boolean containsKey(Object k)

如果调用 map 包含k作为键,则返回 true。否则,返回 false。

3

boolean containsValue(Object v)

如果 map 包含v作为值,则返回 true。否则,返回 false。

4

Set entrySet( )

返回一个包含 map 中条目的 Set。该 set 包含 Map.Entry类型的对象。此方法提供调用 map 的 set 视图。

5

boolean equals(Object obj)

如果 obj 是一个 Map 并且包含相同的条目,则返回 true。否则,返回 false。

6

Object get(Object k)

返回与键k关联的值。

7

int hashCode( )

返回调用 map 的哈希码。

8

boolean isEmpty( )

如果调用 map 为空,则返回 true。否则,返回 false。

9

Set keySet( )

返回一个包含调用 map 中键的 Set。此方法提供调用 map 中键的 set 视图。

10

Object put(Object k, Object v)

将一个条目放入调用 map 中,覆盖与该键关联的任何先前值。键和值分别是 k 和 v。如果键不存在,则返回 null。否则,返回与该键关联的先前值。

11

void putAll(Map m)

m中的所有条目放入此 map 中。

12

Object remove(Object k)

移除键等于k的条目。

13

int size( )

返回 map 中键/值对的数量。

14

Collection values( )

返回一个包含 map 中值的集合。此方法提供 map 中值的集合视图。

实现 Map 的类

以下是实现 Map 以使用 Map 功能的类:

  • HashMap
  • EnumMap
  • LinkedHashMap
  • WeakHashMap
  • TreeMap

扩展 Map 的接口

以下是扩展 Map 接口的接口:

Map 接口示例

示例 1

Map 在各种类中都有其实现,例如HashMap。以下是一个解释 map 功能的示例:

import java.util.HashMap;
import java.util.Map;
public class CollectionsDemo {

   public static void main(String[] args) {
      Map<String, String> m1 = new HashMap<>(); 
      m1.put("Zara", "8");
      m1.put("Mahnaz", "31");
      m1.put("Ayan", "12");
      m1.put("Daisy", "14");

      System.out.println();
      System.out.println(" Map Elements");
      System.out.print("\t" + m1);
   }
}

输出

Map Elements
	{Daisy = 14, Ayan = 12, Zara = 8, Mahnaz = 31}

示例 2

Map 在各种类中都有其实现,例如TreeMap,它根据键对条目进行排序。以下是一个使用 TreeMap 解释 map 功能的示例:

import java.util.Map;
import java.util.TreeMap;

public class CollectionsDemo {

   public static void main(String[] args) {
      Map<String, String> m1 = new TreeMap<>(); 
      m1.put("Zara", "8");
      m1.put("Mahnaz", "31");
      m1.put("Ayan", "12");
      m1.put("Daisy", "14");

      System.out.println();
      System.out.println(" Map Elements");
      System.out.print("\t" + m1);
   }
}

输出

 Map Elements
	{Ayan=12, Daisy=14, Mahnaz=31, Zara=8}

示例 3

Map 在各种类中都有其实现,例如 HashMap。以下是一个使用 HashMap 解释 map 函数以向 map 添加和删除元素的示例:

import java.util.HashMap;
import java.util.Map;
public class CollectionsDemo {

   public static void main(String[] args) {
      Map<String, String> m1 = new HashMap<>(); 
      m1.put("Zara", "8");
      m1.put("Mahnaz", "31");
      m1.put("Ayan", "12");
      m1.put("Daisy", "14");

      System.out.println();
      System.out.println(" Map Elements");
      System.out.print("\t" + m1);
	  
      m1.remove("Daisy");
	  System.out.println(" Map Elements");
      System.out.print("\t" + m1);
   }
}

输出

 Map Elements
	{Daisy=14, Ayan=12, Zara=8, Mahnaz=31} Map Elements
	{Ayan=12, Zara=8, Mahnaz=31}
java_collections.htm
广告