Posts HashMap(一)用法
Post
Cancel

HashMap(一)用法

Java-HashMap

HashMap(哈希表)的理解

  • 增删改查 在不考虑“哈希冲突时的时间复杂度仅有O(1)

  • 主干是 数组 ,也就是通过某个”下标”即索引从而实现一次定位

  • 哈希冲突 是指:虽然两个元素的 key 不同,但是他们的实际地址 却相同,即冲突

HashMap的使用

  1. 创建一个HashMap

    1
    
    Map<Key,Value> map = new HashMap<>();
    

    这里的接口类型为Map,可以使程序更加灵活。当决定更换实现的时候,只需要改变构造器中类型的名称

    例如:如果这个时候想将哈希表换为”黑红树结构”

    1
    
    Map<Key,Value> map = new TreeMap<>();
    
  2. 存入一个 键值对put(key,value)

    map.put("Martin","CoolBoy");
    map.put("James","好人");
    map.put("大学物理","son of bitch");
    

    此时这个哈希表中的数据有:

    key value
    Martin CoolBoy
    James 好人
  3. 此时调用get方法, get(key)

    String dis = map.get("Martin");
    System.out.println(dis);
    

    此时的控制台会输出 mapMartin 所对应的 value —->CoolBoy

  4. 通过containsKey 和 containsValue 可判断是否存在某个key、value值 containsKey(key),containsValue(value)

    1
    2
    
    map.containsKey("Martin");//如果存在则返回true
    map.containsValue("好人");//如果不存在则返回false
    
  5. 遍历这个哈希表时,keySet()

    1
    2
    3
    
    for(Object key : map.keySet()){
        System.out.println(key + "--->" + map.get (key));
    }
    

    map.keySet()即表示此哈希表中所有键值对集合

  6. 删除某个数据,remove(key)

    1
    2
    
    map.remove("大学物理");
    System.out.println("never see you");
    
This post is licensed under CC BY 4.0 by the author.

-

gitpage+jekyll搭建博客

Comments powered by Disqus.