Java HashMap
Java HashMap
在 ArrayList
一章中,您了解了数组将项目存储为有序集合,并且您必须使用索引号 (int
类型)
来访问它们。 然而, HashMap
将项目存储在 "key/value" 对中,您可以通过另一种类型的索引 (例如 String
)访问它们。
一个对象用作另一个对象(值)的键(索引)。 它可以存储不同的类型: String
字符串键和 Integer
整数值,或者相同类型,例如: String
字符串键和 String
字符串值:
实例
创建一个名为 capitalCities 的 HashMap
对象,它将存储字符串键和字符串值:
import java.util.HashMap; // 导入 HashMap 类
HashMap<String, String> capitalCities = new HashMap<String, String>();
添加项目
HashMap
类有很多有用的方法。例如,要向其中添加项目,请使用 put()
方法:
实例
// 导入 HashMap 类
import java.util.HashMap;
public class MyClass {
public static void main(String[] args) {
// 创建一个名为 capitalCities 的 HashMap 对象
HashMap<String, String> capitalCities = new HashMap<String, String>();
// 添加键和值 (Country, City)
capitalCities.put("England", "London");
capitalCities.put("Germany", "Berlin");
capitalCities.put("Norway", "Oslo");
capitalCities.put("USA", "Washington DC");
System.out.println(capitalCities);
}
}
访问项目
要访问 HashMap
中的值,请使用 get()
方法并引用其键:
移除项目
要删除项目,请使用 remove()
方法并参考密钥:
要删除所有项目,请使用 clear()
方法:
HashMap 大小
要找出有多少项目,请使用 size
方法:
循环遍历 HashMap
使用 for-each 循环遍历 HashMap
的项目。
注释: 如果只需要键,请使用 keySet()
方法,如果只需要值,请使用 values()
方法:
实例
// 打印键和值
for (String i : capitalCities.keySet()) {
System.out.println("key: " + i + " value: " + capitalCities.get(i));
}
其他类型
HashMap 中的键和值实际上是对象。在上面的示例中,我们使用了"String"类型的对象。请记住,Java 中的 String 是一个对象(不是原始类型)。要使用其他类型,例如 int,您必须指定一个等效的
包装类: Integer
。对于其他原始类型,请使用: Boolean
用于 boolean,
Character
用于 char, Double
用于 double 等:
实例
创建一个名为 people 的 HashMap
对象,它将存储 String 键和 Integer 值:
// 导入 HashMap 类
import java.util.HashMap;
public class MyClass {
public static void main(String[] args) {
// 创建一个名为 people 的 HashMap 对象
HashMap<String, Integer> people = new HashMap<String, Integer>();
// 添加键和值 (Name, Age)
people.put("John", 32);
people.put("Steve", 30);
people.put("Angie", 33);
for (String i : people.keySet()) {
System.out.println("key: " + i + " value: " + people.get(i));
}
}
}