Java HashMap示例
数组的项存储为有序集合,我们可以通过索引访问它们。另一方面,Java中的HashMap类将项存储在组对中,key/value.它们可以通过另一种类型的索引访问。此类不保证随着时间的推移会有一个固定的顺序。HashMap为基本操作(如get和put)提供恒定的时间性能,前提是它的实现正确。就像HashSet类一样,HashMap有*initial capacity和load factor。capacity是哈希表中的bucket数,load factor只是一个度量哈希表在容量自动增加之前可以达到的完整程度。与HashSet一样,默认的加载因子是0.75.
为什么HashMap很重要很有用
由于其键/值对,因此很容易组织数据。
HashMap允许1个空键和多个空值。
HashMap不允许重复键,但允许重复值。
HashMap扩展了抽象类AbstractMap。
HashMap中的构造函数摘要
HashMap():使用默认初始容量16和默认加载因子0.75初始化空哈希映射。
HashMap(intinitialcapacity):使用指定的初始容量和默认加载因子0.75初始化空的HashMap。
HashMap(int initialCapacity,float loadFactor):使用指定的初始容量和加载因子初始化空的HashMap。
HashMap(Map<?扩展K?extends V>m):使用与指定映射相同的映射初始化新的HashMap。
HashMap类中的方法
void clear():删除此映射中的所有映射。
Object clone():克隆另一个HashMap,但是键和值本身不会被克隆。
boolean containsKey(Object key):如果key在哈希映射中,则返回true,否则返回false。
boolean containsValue(Object value):如果值在哈希映射中的任何键中,则返回true,否则返回false。
V get(Object key):返回指定键映射到的值,如果该映射不包含该键的映射,则返回null。
boolean isEmpty():如果映射不包含元素,则返回true。
V put(K键,V value):将指定值添加到指定键。
V remove(Object key):从哈希映射中移除键。
V replace(K key,V value):仅当指定键当前映射到某个值时才替换该项。
int size():返回此映射中键值对的数目。
HashMap的基本方法操作,以及它们如何工作和相互作用
import java.util.HashMap; public class HashMapExample { public static void main(String[] args) { HashMap<String, String> animals = new HashMap<String, String>(); //putting a key-value pairs within a HashMap //animal -> name animals.put("Elephant", "Dicky"); animals.put("Tiger", "Sammy"); animals.put("Lion", "Sim"); System.out.println(animals); //accessing an item using get() //gives back the value to the specified key, which means it will return back "Sim" System.out.println("The name of 'Lion' is: " + animals.get("Lion"); //removing an item using remove() animals.remove("Elephant"); //getting the size of the hash map System.out.println("The size of the hash map before clearing: " + animals.size()); //clearing/deleting a whole hash map using clear() animals.clear() //getting the size of the hash map System.out.println("The size of the hash map after clearing: " + animals.size()); } }
输出
[Lion=Sam, Tiger=Sammy, Elephant=Dicky] The name of 'Lion' is: Sam The size of the hash map before clearing: 2 The size of the hash map after clearing: 0