HashMap的使用,以及内置方法

简介: HashMap的使用,以及内置方法



  HashMap 是 Java 中常用的集合类之一,它实现了 Map 接口,基于哈希表实现。HashMap 允许存储键值对,其中键和值都可以是任意类型的对象。

1. 创建 HashMap

import java.util.HashMap;
import java.util.Map;
public class HashMapExample {
    public static void main(String[] args) {
        // 创建一个 HashMap
        Map<String, Integer> hashMap = new HashMap<>();
        // 添加键值对
        hashMap.put("One", 1);
        hashMap.put("Two", 2);
        hashMap.put("Three", 3);
        // 打印 HashMap
        System.out.println(hashMap); // 输出: {One=1, Two=2, Three=3}
    }
}

2. 获取值

int value = hashMap.get("Two");
System.out.println("Value for key 'Two': " + value); // 输出: Value for key 'Two': 2

3. 判断是否包含某个键或值

boolean containsKey = hashMap.containsKey("Three");
boolean containsValue = hashMap.containsValue(3);
System.out.println("Contains key 'Three': " + containsKey); // 输出: Contains key 'Three': true
System.out.println("Contains value 3: " + containsValue);   // 输出: Contains value 3: true

4. 遍历 HashMap

for (Map.Entry<String, Integer> entry : hashMap.entrySet()) {
    System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue());
}
// 输出:
// Key: One, Value: 1
// Key: Two, Value: 2
// Key: Three, Value: 3

5. 替换值

hashMap.replace("Two", 20);
System.out.println(hashMap); // 输出: {One=1, Two=20, Three=3}

6. 删除键值对

hashMap.remove("Three");
System.out.println(hashMap); // 输出: {One=1, Two=20}

7. 获取键集合和值集合

Set<String> keySet = hashMap.keySet();
Collection<Integer> values = hashMap.values();
System.out.println("Keys: " + keySet);      // 输出: Keys: [One, Two]
System.out.println("Values: " + values);    // 输出: Values: [1, 20]

8. 获取键值对的数量

int size = hashMap.size();
System.out.println("Size: " + size); // 输出: Size: 2

9. 清空 HashMap

hashMap.clear();
System.out.println(hashMap); // 输出: {}

       这些是一些基本的 HashMap 操作,但要注意,HashMap 不是线程安全的。如果在多线程环境中使用,可以考虑使用 ConcurrentHashMap 或进行适当的同步处理。

相关文章
|
8月前
|
存储 缓存 安全
Java集合框架(Map篇)
在这个示例代码中,首先定义了一个数组和一个集合,并使用Arrays.asList()方法将数组转换成集合。接着对数组和集合分别进行排序,使用binarySearch()方法查找元素位置,使用copyOf()和copy()方法复制数组和集合,最后输出结果。可以看到,Arrays和Collections提供的方法可以方便地对数组和集合进行操作,节省开发者的时间和精力。
|
5天前
|
存储 算法 安全
HashMap 的常用方法
HashMap 的常用方法
10 0
|
5天前
|
机器学习/深度学习
HashMap中tableSizeFor()方法详解
HashMap中tableSizeFor()方法详解
HashMap中tableSizeFor()方法详解
|
7月前
|
存储 安全 Java
Java集合Map之HashMap常用操作
在我看来 , 链表是为了解决hash碰撞使用的一种方法 : 拉线法 , 而红黑树是为了解决&quot;拉的这个线&quot;(链表存储的元素太多)过长的话元素遍历慢的问题
40 2
|
7月前
|
存储 安全
集合框架系列(三)之 map双列集合
集合框架系列(三)之 map双列集合
|
8月前
|
存储 Java
Java集合Map
Java集合Map
27 0
|
存储 Java API
Java集合-Map
Java集合-Map
92 0
Java集合-Map
|
存储
TreeMap用法总结
TreeMap用法总结
201 0
|
存储 安全 Java
Java集合框架-Collection03-Map集合
Java集合框架-Collection03-Map集合
Java集合框架-Collection03-Map集合
遍历HashMap的四种方法
遍历HashMap的四种方法
97 0