• 技术文章 >Java >Java基础

    java map与list的区别

    angryTomangryTom2019-11-18 11:24:14原创1971

    java map与list的区别

    Map(映射)

    Map是一种把键对象和值对象映射的集合,它的每一个元素都包含一个键对象和值对象。 Map主要有以下两个实现类:

    HashMap:HashMap基于散列表实现,其插入和查询<K,V>的开销是固定的,可以通过构造器设置容量和负载因子来调整容器的性能。

    LinkedHashMap:类似于HashMap,但是迭代遍历它时,取得<K,V>的顺序是其插入次序,或者是最近最少使用(LRU)的次序。

    TreeMap:TreeMap基于红黑树实现。查看<K,V>时,它们会被排序。TreeMap是唯一的带有subMap()方法的Map,subMap()可以返回一个子树。

    List(列表)

    List的元素以线性方式存储,可以存放重复对象,List主要有以下两个实现类:

    ArrayList : 长度可变的数组,可以对元素进行随机的访问,向ArrayList中插入与删除元素的速度慢。 JDK8 中ArrayList扩容的实现是通过grow()方法里使用语句newCapacity = oldCapacity + (oldCapacity >> 1)(即1.5倍扩容)计算容量,然后调用Arrays.copyof()方法进行对原数组进行复制。

    LinkedList: 采用链表数据结构,插入和删除速度快,但访问速度慢。

    比较ListMap
    继承接口Collection
    常见实现类AbstractList(其常用子类有ArrayList、LinkedList、Vector)HashMap、HashTable
    常见方法add( )、remove( )、clear( )、get( )、contains( )、size( )put( )、get( )、remove( )、clear( )、containsKey( )、containsValue( )、keySet( )、values( )、size( )
    元素可重复不可重复
    顺序有序
    线程安全Vector线程安全Hashtable线程安全

    php中文网,大量的免费Java入门教程,欢迎在线学习!

    以上就是java map与list的区别的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:java map list
    上一篇:java如何跳出for循环 下一篇:java中import关键字是什么意思
    大前端线上培训班

    相关文章推荐

    • java中List集合及其实现类的方法介绍(附代码)• map在python中什么意思• php有map吗• Java HashMap透析

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网