JAVA基础之集合知识总结

Collection

    List(存取有序,有索引,可以重复)

        ArrayList

        底层是数组实现的,线程不安全,查找和修改快,增和删比较慢

        LinkedList

        底层是链表实现的,线程不安全,增和删比较快,查找和修改比较慢

        Vector

        底层是数组实现的,线程安全的,无论增删改查都慢

如果查找和修改多,用ArrayList

如果增和删多,用LinkedList

如果都多,用ArrayList

    Set(存取无序,无索引,不可以重复)

        HashSet

        底层是哈希算法实现

        LinkedHashSet

        底层是链表实现,可以保证元素唯一,存取顺序一致

        TreeSet

        底层是二叉树算法实现,可以排序,存储自定义类型时需要注意实现Comparable接口并重写          compareTo方法

一般在开发的时候不需要对存储的元素排序,所以在开发的时候大多用HashSet,HashSet的效率比较高.TreeSet在面试的时候比较多

Map

        HashMap

        底层是哈希算法

        LinkedHashMap

        底层是链表,存取顺序一致

        TreeMap

        底层是二叉树算法,可以排序

开发中用HashMap比较多

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Java集合类可用于存储数量不等的对象,并可以实现常用的数据结构如栈,队列等,Java集合还可以用于保存具有映射关...
    小徐andorid阅读 2,099评论 0 13
  • java基础 集合承继包含图 Collection vs Collections 首先,"Collection" ...
    onlyHalfSoul阅读 1,436评论 0 5
  • 此文已经同步至个人站点博客,点击下方链接可以体验更加阅读模式:《java题库》 一、Set 1.Set 里的元素是...
    千淘萬漉阅读 3,716评论 0 8
  • 简介 1.所有的集合类都位于java.util包下,Java的结合主要由两个接口类派生出来,分别是Collecti...
    yunqing_71阅读 2,608评论 0 2
  • 剖析面试最常见问题之Java集合 1.说说list、set和map的区别?    1.list是有序可重复;   ...
    血武行者阅读 345评论 0 0

友情链接更多精彩内容