飞猪it 2011-11-14 17:27 采纳率: 0%
浏览 194
已采纳

java 中集合的设计

[size=large]在Set中有HashSet,LinkdedHashSet,TreeSet具体类
在Map中有HashMap,LinkedHashMap,TreeMap具体类
而在List中却是ArrayList,LinkedList具体类,
小弟愚笨,为什么List在设计的时候,不设计出一个HashList这样的类呢(看上去显得更统一)?[/size]

  • 写回答

4条回答 默认 最新

  • Java面试专栏 2011-11-14 18:50
    关注

    Hash是通过某个函数f,使得
    存储位置=f(关键字)
    我们可以通过查找关键字不需要比较就可获得需要的记录的存储位置。

    List需要表示每个数据元素ai与其后继数据元素ai+1之间的逻辑关系。

    可以看出:
    Hash描述的是关键字与存储位置之间的关系,访问效率高
    List描述的是元素与元素间的关系,需要遍历
    它们的设计目标明显不一样,所以才不能设计HashList吧
    个人的拙见...

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?