集合 学习的简单总结

集合总结
一、collection(单列集合)

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

            ArrayList底层是数组实现的,线程不安全,查找和修改快,增删比较慢(可以存储重复,无序)

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

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

            如果查找和修改多,用ArrayList
            如果增删多,用linkedlist
            如果都多,用ArayList

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

           HashSet  底层是哈希算法实现(开发时多用,效率较高)(可以去掉重复元素,无序)

           LinkedHashSet 底层是链表实现的,但是也可以保证元素唯一,和HashSet原理一样 (有序,是唯一一个怎么存就怎么取的)

          TreeSet 底层是二叉树算法实现(面试时用到,几种排序方式的区别) 。TreeSet存储Integer类型的元素是可以用来对元素进行排序的(按字典顺序),也可以保证元素的唯一(不可存储重复)

这里写图片描述
二、Map(双列集合)
HashMap 底层是哈希算法,针对键(开发中用到的比较多),(可以去掉重复元素,无序)

    LinkedHashMap 底层是链表,针对键

    TreeMap 底层是二叉树算法,针对键    

猜你喜欢

转载自blog.csdn.net/Mr_Ycy/article/details/81569576