Skip to content

关于Map集合的有序/无序性 #2863

@jmingfu

Description

@jmingfu

作者大大,你好。在Java集合常见面试题总结(上)中,你提到说:“Map(用 key 来搜索的专家): 使用键值对(key-value)存储,类似于数学上的函数 y=f(x),"x" 代表 key,"y" 代表 value,key 是无序的、不可重复的,value 是无序的、可重复的,每个键最多映射到一个值。”
我觉得,对于Map不管什么情况下,所有key之间、value之间,本身是没有任何关联的,也就是说,单独讨论key和value的有序性其实意义不大。而它的有序无序性应该是看内部存放的键值对这个整体,例如HashMap,键值对之间没有关联,无序;LinkedHashMap,通过内部维护的双向链表,将所有键值对联系起来,有序;TreeMap,所有的键值对之间通过红黑树关联起来,有序。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions