Java Map接口实现类是Java中的一种重要的数据结构,它是一个可以存储键值对的集合,其中键和值都可以是任何对象。Map接口实现类有很多,如HashMap、TreeMap、LinkedHashMap、WeakHashMap、IdentityHashMap等。
HashMap是最常用的一个Map实现,它使用散列表来存储键值对,其特性是快速查找,但不保证顺序。TreeMap使用了二叉树来存储键值对,其特性是能够保证键值对的有序性。LinkedHashMap也使用散列表来存储键值对,但它会记录插入时的顺序,因此能够保证迭代时的顺序。WeakHashMap使用弱引用作为key,当key不再被引用时会被GC回收。IdentityHashMap使用==而不是equals()方法来判断key相等。
public class Test { public static void main(String[] args) { // 创建一个 HashMap 对象 Mapmap = new HashMap (); // 添加映射关系 map.put("A", 1); map.put("B", 2); // 获取映射关系 System.out.println(map.get("A")); // 1 } }
Map接口中键和值一一映射. 可以通过键来获取值。
序号 | 方法描述 |
---|---|
1 | void clear( ) 从此映射中移除所有映射关系(可选操作)。 |
2 | boolean containsKey(Object k) 如果此映射包含指定键的映射关系,则返回 true。 |
3 | boolean containsValue(Object v) 如果此映射将一个或多个键映射到指定值,则返回 true。 |
4 | Set entrySet( ) 返回此映射中包含的映射关系的 Set 视图。 |
5 | boolean equals(Object obj) 比较指定的对象与此映射是否相等。 |
6 | Object get(Object k) 返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。 |
7 | int hashCode( ) 返回此映射的哈希码值。 |
8 | boolean isEmpty( ) 如果此映射未包含键-值映射关系,则返回 true。 |
9 | Set keySet( ) 返回此映射中包含的键的 Set 视图。 |
10 | Object put(Object k, Object v) 将指定的值与此映射中的指定键关联(可选操作)。 |
11 | void putAll(Map m) 从指定映射中将所有映射关系复制到此映射中(可选操作)。 |
12 | Object remove(Object k) 如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。 |
13 | int size( ) 返回此映射中的键-值映射关系数。 |
14 | Collection values( ) 返回此映射中包含的值的 Collection 视图。 |
下面的例子来解释Map的功能:
import java.util.*;
public class CollectionsDemo {
public static void main(String[] args) {
Map 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
{Mahnaz=31, Ayan=12, Daisy=14, Zara=8}
Java compareTo() 方法JavaString类compareTo() 方法用于两种方式的比较:字符串与对象进行比较。按字典顺序比较两个字符串。语...
Java equals() 方法JavaString类equals() 方法用于将字符串与指定的对象比较。语法public boolean equals(Object anObject)参数a...
JavaFX教程 -JavaFX WebEngineJavaFX 提供与 HTML5 内容互操作的功能。JavaFX 中的底层网页渲染引擎是名为 WebKit 的流行的开源A...
Class类的实例对象,用于记录类描述信息。Class类没有公共的构造方法,无法通过new运算符实例化;只能通过对象的getClass方法,...
Java教程 -Java三元运算符?运算符是三元运算符。Java三元运算符基本上是简单的if语句的简写形式。语法?具有以下一般形式:expres...