首页 > 其他分享 >Android开发 - Map 键值对链表的使用解析

Android开发 - Map 键值对链表的使用解析

时间:2024-09-09 10:24:32浏览次数:4  
标签:Map map value 链表 键值 key Integer

创建和初始化 Map

  • HashMap:常用的实现类,基于哈希表

    Map<String, Integer> map = new HashMap<>();
    
  • LinkedHashMap:保持插入顺序的实现类

    Map<String, Integer> map = new LinkedHashMap<>();
    
  • TreeMap:基于红黑树,按键的自然顺序或提供的比较器排序

    Map<String, Integer> map = new TreeMap<>();
    

添加键值对

  • map.put(K key, V value):添加或更新键值对

    map.put("Apple", 1);
    map.put("Banana", 2);
    

获取值

  • map.get(K key):根据获取

    Integer value = map.get("Apple"); // value = 1
    
  • map.containsKey(K key)检查是否包含指定

    boolean hasKey = map.containsKey("Banana"); // true
    
  • map.containsValue(V value)检查是否包含指定

    boolean hasValue = map.containsValue(1); // true
    

删除键值对

  • map.remove(K key)删除指定键的键值对

    map.remove("Apple");
    

遍历 Map

  • map.entrySet()遍历键值对集合

    for (Map.Entry<String, Integer> entry : map.entrySet()) {
        String key = entry.getKey();
        Integer value = entry.getValue();
        System.out.println(key + ": " + value);
    }
    
  • map.keySet()遍历键集合

    for (String key : map.keySet()) {
        Integer value = map.get(key);
        System.out.println(key + ": " + value);
    }
    
  • map.values(): 遍历值集合

    for (Integer value : map.values()) {
        System.out.println(value);
    }
    

清空 Map

  • map.clear()清空所有键值对

    map.clear();
    

检查 Map 是否为空

  • map.isEmpty()检查是否为空

    boolean empty = map.isEmpty(); // 如果为空,则为true
    

补充

  • Map<String, Integer>键值类型泛型,可以是任何类型

标签:Map,map,value,链表,键值,key,Integer
From: https://www.cnblogs.com/ajunjava/p/18404053

相关文章

  • [Python手撕]合并两个有序链表
    #Definitionforsingly-linkedlist.#classListNode:#def__init__(self,val=0,next=None):#self.val=val#self.next=nextclassSolution:defmergeTwoLists(self,list1:Optional[ListNode],list2:Optional[ListNode])->......
  • PTA 6.1单链表的逆转
     这道题也是体验到了面向答案编程的过程,根据测试时系统反馈的错误点,不断更进完善,缝缝补补最后得到通过审核的代码本题要求实现一个函数,将给定的单链表逆转。正确答案:ListReverse(ListL){PtrToNodeptr=L;intlen=0;PtrToNodetemp=NULL;whil......
  • Java中的集合框架深度解析:从ArrayList到ConcurrentHashMap的性能考量
    Java中的集合框架深度解析:从ArrayList到ConcurrentHashMap的性能考量大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!Java的集合框架为开发者提供了多种数据结构,每种数据结构都有其特定的使用场景和性能特征。本文将深度解析Java中的主要集合类,从Array......
  • 华为笔试——输出单向链表中倒数第k个节点
    描述输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针。链表结点定义如下:struct ListNode{    int m_nKey;    ListNode* m_pNext;};正常返回倒数第k个结点指针,异常返回空指针.要求:(1)正序构建链表;(2)构建后要忘记链表长度......
  • 142. 环形链表 II
    给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从0开始)。......
  • MaPLe(论文解读): Multi-modal Prompt Learning
    Comment:AcceptedatCVPR2023摘要预训练的视觉语言模型(VL-PTMs)(比如CLIP)在下游任务中已经表现出不错的泛化能力。但是它们对输入文本提示模板的选择很敏感,需要仔细选择提示模板才能表现良好。受到NLP领域的启发,最近的CLIP的自适应性方法开始学习提示作为文本输入,来微调CLIP......
  • Day03 链表part01| LeetCode 203. 移除链表元素,707. 设计链表,206. 反转链表
    链表理论基础链表一种通过指针串联在一起的线性结构数据域指针域(存放指向下一个节点的指针,最后一个节点的指针域指向NULL)入口节点——head头节点链表类型单链表双链表两个指针域一个指向下一个节点一个指向上一个节点循环链表首尾相连约瑟夫环问题......
  • Day04 链表part02| LeetCode 24. 两两交换链表中的节点,19. 删除链表的倒数第 N 个,160.
    两两交换链表中的节点24.两两交换链表中的节点classSolution{publicListNodeswapPairs(ListNodehead){//设置虚拟头节点ListNodedummy=newListNode(0,head);ListNodecur=dummy;while(cur.next!=null&......
  • 20240911_220441 公共基础 线性链表
    什么是线性链表单向线性链表双向线性链表带链的栈带链队列线性链表的运算循环链表考点小结习题c习题a习题b习题c......
  • Python中的`map()`函数和`filter()`函数及其应用场景
    在Python中,map()和filter()是两个内置的高阶函数,它们接受函数作为参数,并对序列(如列表、元组等)中的每个元素应用该函数。这两个函数虽然功能相似,但在使用目的和返回结果上有所不同。下面,我将分别详细解释map()和filter()函数的工作原理、应用场景,并探讨它们的异同点。1. map()......